B-R*_*Rad 4 c# binding image expression-blend
这是我到目前为止:
<Image Source="{Binding ImageSource"} />
<Button Content"Text" ImageSource="path/image.png" />
Run Code Online (Sandbox Code Playgroud)
我知道有些事情不对劲.我想我无法看到ImageSource的定义.
我有几个按钮,只想为每个按钮都有一个独特的图像.我有一个我正在使用的按钮模板,它适用于文本.
<Label Content="TemplateBinding Content" />
Run Code Online (Sandbox Code Playgroud)
感谢你的帮助!
在你的情况下,它可以很容易!
将图像作为资源添加到项目中,然后在XAML中使用如下内容:
<Button HorizontalAlignment="Left" Margin="20,0,0,20" VerticalAlignment="Bottom" Width="50" Height="25">
<Image Source="image.png" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="0">
</Image>
</Button>
Run Code Online (Sandbox Code Playgroud)
或者,更复杂的方式:
如果使用MVVM模式,则可以执行以下操作
在你的XAML中:
<Button Focusable="False" Command="{Binding CmdClick}" Margin="0">
<Image Source="{Binding ButtonImage}" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Margin="0">
</Image>
</Button>
Run Code Online (Sandbox Code Playgroud)
在您的ViewModel中:
private Image buttonImage;
public Image ButtonImage
{
get
{
return buttonImage;
}
}
Run Code Online (Sandbox Code Playgroud)
在ViewModel的构造函数或其初始化的某处:
BitmapImage src = new BitmapImage();
src.BeginInit();
src.UriSource = new Uri("image.png", UriKind.Relative);
src.CacheOption = BitmapCacheOption.OnLoad;
src.EndInit();
buttonImage = new Image();
buttonImage.Source = src;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
24964 次 |
| 最近记录: |