我应该得到我的Image的Uri,但是当我尝试这样做时,它会给出这个错误。
Image的UriSource能够转换BitmapImage,但BitmapImage的属性会抛出错误。我怎样才能获得图片的来源?
img0.Source = GetImageForIndex(0, names, file, path).ImgSource;
ImageListTemplate GetImageForIndex(int index, List<string> names, IsolatedStorageFile file, string path)
{
using (IsolatedStorageFileStream stream = file.OpenFile(path + names[index], FileMode.Open, FileAccess.Read))
{
BitmapImage tempImage = new BitmapImage();
tempImage.SetSource(stream);
imagePath = path + names[index];
return new ImageListTemplate() { ImgSource = tempImage };
}
}
ImgSource的类型已经是BitmapImage。
答案 0 :(得分:2)
您没有为图片设置URI来源,而是从数据流中重新加载。
可以从流或URI填充BitmapImage
。如果设置了UriSource,则只能通过从URI创建图像来读取UriSource。
根据您的代码,如果您在查询SelectedItem
时想要引用回原始数据源,我建议将该路径/文件信息存储在Tag
属性中。或者将其添加为绑定项数据源的另一个属性并查询。