对于Winrt中的给定按钮控件,我想将其内容动态设置为图像。我原本以为这很简单:
_subjectFilePoster = new BitmapImage();
_subjectFilePoster.SetSource(t);
_btnPlayVideo.Content = _subjectFilePoster;
但事实并非如此,而是在其上面写了一个类型为Windows.Ui.Xaml.Media.Imaging.BitmapImage
的按钮。
答案 0 :(得分:1)
需要将Content
设置为<Image>
,将<Image>
Source
设置为BitmapImage
_subjectFilePoster = new BitmapImage();
_subjectFilePoster.SetSource(t);
Image i = new Image();
i.Source = _subjectFilePoster;
_btnPlayVideo.Content = i;
答案 1 :(得分:0)
我是这样做的:
<Button x:Name="MyButton">
<Image Source="{Binding}" />
</Button>
有了这个:
this.MyButton.DataContext = "http://server/image.png";
为什么会这样?因为您可以在底层XAML框架中使用本机类型转换器。这是最简单的方法。它确实有效。我一直都在使用这种技术。
你可以这样做:
<Button>
<Image x:Name="MyImage" Source="{Binding}" />
</Button>
然后用这个:
this.MyImage.DataContext = "http://server/image.png";
这是唯一的方法吗?不,这是最简单的方法吗?是。
两个词中最好的:绑定和代码隐藏。
祝你好运!