当我点击一个空的位图图像时,嘿内存问题。
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
//if (pictureBox1.Image != null)
// try
// {
pictureBox1.Image = System.Drawing.Image.FromFile("C:/folder/" + listBox1.SelectedItem.ToString());
//}
//catch (NullReferenceException)
//{
// MessageBox.Show("The image box is empty!");
//}
}
我试过尝试捕捉没有工作。任何帮助都会非常感谢。
答案 0 :(得分:3)
没有“空位图”这样的东西。您可能有一个只包含黑色或白色像素的位图。它需要的内存与拥有相同大小的照片的内存一样多。并且当它很大时能够生成OOM异常。
或者因为你忘了丢弃旧的几次而点击了几次:
if (pictureBox1.Image != null) pictureBox1.Image.Dispose();
pictureBox1.Image = null;
pictureBox1.Image = System.Drawing.Image.FromFile(...);
图像文件格式也可能有问题,可能是GDI +不支持的格式。不幸的是,这也产生了OOM。如果相关:请勿尝试加载.txt文件。