访问包含超过33k图像的List中的图像时出现ArgumentException

时间:2016-03-04 09:46:08

标签: c# image winforms gdi+ system.drawing

当您创建一个包含超过33000张图片的列表,并且您尝试访问索引33000或更高版本的图像的属性时,会出现ArgumentException(" Paramether无效& #34;)在System.Drawing.Image.get_Width()    在System.Drawing.Image.get_Size()    在C:\ Projects \ Test \ Test \ Form1.cs中的Test.Form1.OnLoad(EventArgs e)

 List<Image> list = new List<Image>();
 for (int i = 0; i < 34000; i++)
 {
     list.Add(Resources.close);
 }

 System.Drawing.Size size = list[33333].Size;

图片大小为32x32。就这个: enter image description here

enter image description here

看来,当你有超过33k的图像对象时,你会得到这个例外。根据MSDN,您可以拥有大约65k个GDI对象:link。无论如何,有没有人知道一种解决方法,并在一个过程中有一个有用的多个图像集合?

0 个答案:

没有答案