原因:使用Image.FromFile方法,这个方法会锁定图片文件,而且会导致内存占用增大,不建议使用,一下是两种解决方法:
一:将Image类转换成Bitmap类
1 System.Drawing.Image img = System.Drawing.Image.FromFile(filepath);
2 System.Drawing.Image bmp = new System.Drawing.Bitmap(img);
3 img.Dispose();
然后使用 bmp作为PictureBox的图片源
二:从流中读取
FileStream fileStream = new FileStream(“文件名”, FileMode.Open, FileAccess.Read);
pictureBox1.Image = Image.FromStream(fileStream);
fileStream.Close();
fileStream.Dispose();
三 byte[]转图片
MemoryStream ms = new MemoryStream(list[i].PicData);
Image bImg = Image.FromStream(ms);