我在Page1.xaml上有一个指向网址的图像控件:http://www.example.com/blah.jpg
我导航到Page2.xaml并使用我的WebAPI将新图像上传到该URL。我调用Frame.GoBack()导航回Page1.xaml。
旧图像仍显示在图像控件中。如何确保Image控件重新下载图像,即使它位于同一个URL?
答案 0 :(得分:0)
我找到的唯一方法是将查询字符串附加到图像的末尾。这有点像黑客,它可以干扰保存操作,但它是有效的。
为了清楚起见,我使用图像url设置属性,其值如下:
"http://www.example.com/blah.jpg?id=" + Guid.NewGuid()
触发RaisePropertyChanged事件,并且图像控件被欺骗以认为图像已更改。
答案 1 :(得分:0)
将BitmapImage.CreateOptions
属性设置为IgnoreImageCache
。
来自MSDN:
CreateOptions的另一个可能值是 BitmapCreateOptions.IgnoreImageCache。你应该只使用 BitmapCreateOptions.IgnoreImageCache在你知道的情况下 由URI检索的源图像文件有可能转换 时间。否则,设置要使用的CreateOptions BitmapCreateOptions.IgnoreImageCache导致所有新检索的图像 要再次解码的源,这会对性能产生负面影响。 ...