我正在写一个可以访问音乐库的音乐播放器。我想支持存储在曲目旁边的封面图像,例如:
我有这些封面图像的绝对路径存储并转换为我的视图模型上的Uri
个对象。我尝试使用Image
将这些绑定到XAML中的UriSource
,但图像仍为空白。我还尝试使用从Uris到[{1}}的转换器绑定到Source
,结果相似。在这两种情况下,我都没有任何例外或绑定错误。
我知道我可以自己预加载图片并从BitmapImage
创建BitmapImage
,但我会重新创建现有的缓存系统。你有什么建议可以解决这个问题吗?
答案 0 :(得分:0)
我认为Windows应用商店应用程序中没有用于访问本地路径的Uri协议,AFAIK仅适用于resources on web, in application package and in application state。
您可以做的最好的事情是根据本地路径在视图模型中创建BitmapImage
。这样的事情应该有效:
var file = await StorageFile.GetFileFromPathAsync(filepath);
var stream = await file.OpenReadAsync();
var bitmap = new BitmapImage();
await bitmap.SetSourceAsync(stream);