2024年4月11日发(作者:)

方案异步加载BitmapImage

当你在WPF主线程中时不时需要加载图片时,界面上的Animation会因为IO操作而卡壳,要想保持动画

的流畅就必须将IO操作放到后台线程中操作,如下:

private void ChangeImage() {

Image image = new Image();

new Thread(new ThreadStart(() => {

BitmapImage bitmap = new BitmapImage();

nit();

rce = new Uri(images[index++ % ]);

ption = ;

t();

();

nvoke((Action)(() => {

= bitmap;

h = mToFill;

t = image;

}));

})).Start();

}

方案中加载高分辨率图片性能优化

在最近的项目中,遇到一个关于WPF中同时加载多张图片时,内存占用非常高的问题。

问题背景:

在一个ListView中同时加载多张图片,注意:我们需要加载的图片分辨率非常高。

代码XAML: