我试图在我的WPF
应用程序中加载大约20张图像。只有第一张图片完全加载。其他图像部分加载。当我用断点来调试我试图加载每个图像后2秒,并运行良好。图像部分加载
代码
图像将被加载等,
foreach (string path in ImagesCollection)
{
DisplayImage = LoadImage(path);
}
负载图像的方法,
MemoryStream mem;
if (!string.IsNullOrEmpty(path) && (File.Exists(path)))
{
FileInfo ImageFile = new FileInfo(path);
ImageFile.Refresh();
if (mem != null)
{
mem.Dispose();
}
using (var stream = ImageFile.OpenRead())
{
mem = new MemoryStream();
stream.CopyTo(mem);
}
mem.Position = 0;
ImageFrame = BitmapFrame.Create(mem);
}
截图:
我相信Dispose
或新的实例使图像无法加载。请帮助。
有你为什么不使用'BitmapFrame.Create(新的URI(路径))任何理由'没有所有的数据流复制? – Clemens
@Clemens不,图像被加载到多个位置,并且MS Paint中还有一个编辑和保存功能。使用'新的Uri(路径)'抛出'访问冲突错误'?不确定。 – iamCR
@HenkHolterman你可以请改革吗? – iamCR