C# 当用户控件显示给用户时,在图片框中加载图像
我想用用户控件以一种形式显示很多图像,但是速度很慢,占用了很多系统内存 当用户控件显示给用户时,如何在图片框中加载图像 我编写了这个示例代码。它适用于700幅图像,但我仍在寻找最佳解决方案C# 当用户控件显示给用户时,在图片框中加载图像,c#,winforms,picturebox,C#,Winforms,Picturebox,我想用用户控件以一种形式显示很多图像,但是速度很慢,占用了很多系统内存 当用户控件显示给用户时,如何在图片框中加载图像 我编写了这个示例代码。它适用于700幅图像,但我仍在寻找最佳解决方案 Bitmap myBitmap; Image myThumbnail; foreach (var item in queryMatchingFiles) { Image.GetThumbnailImageAbort myCallback = new Image.GetThumbnailImageAb
Bitmap myBitmap;
Image myThumbnail;
foreach (var item in queryMatchingFiles)
{
Image.GetThumbnailImageAbort myCallback = new Image.GetThumbnailImageAbort(ThumbnailCallback);
myBitmap = new Bitmap(item);
myThumbnail = myBitmap.GetThumbnailImage(120, 183, myCallback, IntPtr.Zero);
flowLayoutPanel1.Controls.Add(new PictureBox {
Image = myThumbnail,
Width = 120,
Height = 183,
BackgroundImageLayout = ImageLayout.Stretch
});
count++;
myBitmap = null;
myThumbnail = null;
}
public bool ThumbnailCallback()
{
return false;
}
速度非常慢,占用了大量系统内存
很有可能原始图像的分辨率远远高于当前显示的分辨率。如果是这样,请在内存或磁盘上相应地调整它们的大小。使用缩略图渲染图像集,并仅在选择一个图像时加载完整图像。