GDI +中发生了一般错误

时间:2016-05-02 06:03:39

标签: c# winforms gdi+ picturebox flowlayoutpanel

好的,所以我知道这个问题已经存在于网络上,但我不认为我读过的任何解决方案都适合我的具体问题。

背景 我正在编写一个小型的C#WinForm应用程序,我们公司的用户可以在其中查看,编辑和操作图像文件。图像细节(文件类型,存储位置等)存储在数据库中,当用户从DataGridView中选择给定文件时,图像的第一页显示在“主”PictureBox控件中,而所有后续的缩略图副本页面(如果是多页文档)显示在附近。

打开图像时,程序将文档拆分为多个图像,为每个图像创建一个新的PictureBox控件,并将该PictureBox添加到FlowLayoutPanel,这就是发生错误的地方。

我用单张和多张图像测试了程序,一切都很好,除非我尝试打开包含大量页面(180+)的图像。如果程序必须打开并使用较少的页面进行成像,一切都很好。但是,当我测试200多页的图像时,我会收到:

“System.Drawing.dll中发生了'System.Runtime.InteropServices.ExternalException'类型的异常,但未在用户代码中处理

其他信息:GDI +中发生了一般性错误“

无论图像有多大(190,200,300,500页),错误通常发生在第185页左右(但并不总是第185页)。

A screenshot of the code causing the error. This is the backgroundworker that does all the work splitting the images

我不认为错误与图像本身或它们的处理方式有关;所有其他图像(即页面较少的图像)都很好。也许我正在添加到flowlayout面板的图片框控件的数量/大小等有限制?

有什么想法吗?

0 个答案:

没有答案