c# 设置控件图片,导致图片被占用无法删除问题

原因:使用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的图片源
二:从流中读取

1 FileStream fileStream = new FileStream("文件名", FileMode.Open, FileAccess.Read);
2 pictureBox1.Image = Image.FromStream(fileStream);
3 fileStream.Close();
4 fileStream.Dispose(); 

 

posted @ 2017-07-13 09:17  左天很美  阅读(4415)  评论(0编辑  收藏  举报