【发布时间】:2016-03-23 00:29:46
【问题描述】:
我在 xaml 中有一个图像元素,我想将它与我的视图模型中的一个属性绑定。我将 xaml Image 元素绑定到名为 MainImage 的属性,如下所示。
private Image mainImage_ = new Image();
public Image MainImage
{
get
{
return mainImage_;
}
set
{
if (mainImage_ != value)
{
mainImage_ = value;
OnPropertyChanged("MainImage");
}
}
}
我想通过从计算机浏览它来将图像设置为 xaml 中的图像元素,我已经这样做了。
FileOpenPicker openPicker = new FileOpenPicker();
openPicker.SuggestedStartLocation = PickerLocationId.PicturesLibrary;
openPicker.ViewMode = PickerViewMode.Thumbnail;
openPicker.FileTypeFilter.Clear();
openPicker.FileTypeFilter.Add(".bmp");
openPicker.FileTypeFilter.Add(".png");
openPicker.FileTypeFilter.Add(".jpeg");
openPicker.FileTypeFilter.Add(".jpg");
StorageFile file = await openPicker.PickSingleFileAsync();
if (file != null)
{
IRandomAccessStream fileStream = await file.OpenAsync(FileAccessMode.Read);
BitmapImage bitmapImage = new BitmapImage();
bitmapImage.SetSource(fileStream);
MainImage = bitmapImage;
new MainPage().DataContext = file;
}
MainImage = bitmapImage 显示无法直接设置的错误。 我该如何解决? 属性的返回类型应该是字符串(路径)还是图像? 如果有其他更好的方法,请告诉我。
【问题讨论】:
标签: c# xaml windows-10 uwp