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();