本文介绍了C#如何在没有OutOfMemoryException的情况下批量加载listview上的图像?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
Hello Winforms社区,
我正在尝试在listview中加载超过一千个图像,但我得到了OutOfMemoryException。作为解决方案,我阅读了有关按需加载或启用VirtualMode及其处理程序的信息。我不知道如何将我的代码转换到那个级别...但是我怎么能成功实现
?b
private void btnAddImg_Click(object sender,EventArgs e)
{
OpenFileDialog ofd = new OpenFileDialog();
ofd.Multiselect = true;
DialogResult dr = ofd.ShowDialog();
if(dr == DialogResult.OK)
{
foreach(ofd.FileNames中的字符串文件名)
{
Image img = Image.FromFile(filename);
string a = c.ToString();
imageList1.Images.Add(a,img);
var listViewItem = listView1.Items.Add("");
listViewItem.ImageKey = a;
c ++;
}
}
}
$
解决方案
这篇关于C#如何在没有OutOfMemoryException的情况下批量加载listview上的图像?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!