C# 未加载WPF图像

C# 未加载WPF图像,c#,wpf,image,caching,imagesource,C#,Wpf,Image,Caching,Imagesource,我有一个WPF应用程序,它有一个带有图像列表的列表框,然后是一个滚动容器中的图像。当用户单击列表框中的项目时,它会切换图像源。我正在处理高达10k x 10k的大分辨率图像。应用程序可以毫无问题地加载第一幅高分辨率图像,您甚至可以切换到分辨率较小的图像。但是,当您尝试加载新的高分辨率图像时,图像将变为空白。但是,当您单击之前加载的第一个高分辨率图像时,它看起来很好 我认为这是一个内存/缓存问题,但我不确定在加载新映像之前需要做什么才能从旧映像中释放内存/缓存 下面是我如何设置源的: String

我有一个WPF应用程序,它有一个带有图像列表的列表框,然后是一个滚动容器中的图像。当用户单击列表框中的项目时,它会切换图像源。我正在处理高达10k x 10k的大分辨率图像。应用程序可以毫无问题地加载第一幅高分辨率图像,您甚至可以切换到分辨率较小的图像。但是,当您尝试加载新的高分辨率图像时,图像将变为空白。但是,当您单击之前加载的第一个高分辨率图像时,它看起来很好

我认为这是一个内存/缓存问题,但我不确定在加载新映像之前需要做什么才能从旧映像中释放内存/缓存

下面是我如何设置源的:

String fileLocation = ... ;
ImageSourceConverter sc = new ImageSourceConverter();
img_Map.Source = (ImageSource)sc.ConvertFromString(fileLocation);

有什么想法吗?

也许这可以帮助你,谢谢你的链接。我现在不在电脑前,但我明天会玩那个。同时,我们非常感谢您提出的任何其他建议。我在那个链接上玩过这些信息,但没有任何不同。我不认为这是一个参考问题,因为我没有直接处理图像;相反,我只是在更改图像控件的源代码。因此,我认为控件如何处理图像是一个问题(在源代码更改时不释放以前的图像)。听起来对吗?还有其他人遇到过这个问题吗?Bump。。。这件事我真的需要一些帮助。如果有人有任何想法,我将不胜感激。