【发布时间】:2016-04-09 17:26:27
【问题描述】:
我需要在 datagridview (DatagridviewImageColumn) 上加载大约 70-100 个图像,我可以做到,但只加载 33 个,然后我得到:“系统内存不足异常”Memria insuficiente。
图像具有高分辨率 (1600x2700)。我的代码是:
If FolderBrowserDialog1.ShowDialog = DialogResult.OK Then
For Each Documento As String In My.Computer.FileSystem.GetFiles(FolderBrowserDialog1.SelectedPath, FileIO.SearchOption.SearchTopLevelOnly)
*Dim imagen As Image = Image.FromFile(Documento)
DataGridView1.Rows(a).Cells(0).value = imagen
a = a + 1
Next
End If
错误点与(*)一致
我还尝试了延迟 (Threading.Thread.Sleep(3500)) 和间隔为 3500 的通过计时器,但我仍然得到同样的错误。
我能做什么?
谢谢。
【问题讨论】:
-
Size 属性设置为多少?在错误发生之前填充了多少行?
-
datagridview单元格的宽高为100,填充的行数为33
-
如果您的应用程序是 32 位的,则它被限制为 1.6 GB 的 RAM。你的图片占用那么多空间吗?
-
是的,我正在 VS2015 上在 32 位机器上进行开发,图像的大小约为 1.75 mb/张
-
这仍然没有达到 1.6 GB。你能构建一个 64 位的应用程序吗? - 甚至只是为了检验这个假设。
标签: vb.net datagridviewimagecolumn