设置picturebox图片的时候像这样 就不会占用文件了。
FileStream fs = new FileStream("c:\aaa.pic", FileMode.Open);
byte[] bytes = new byte[fs.Length];
fs.Read(bytes, 0, bytes.Length);
fs.Close();
MemoryStream ms = new MemoryStream(bytes);
Bitmap img = new Bitmap(ms);
pictureBox1.Image = img;
public Form1()
{
InitializeComponent();
pictureBox1.ImageLocation = @"C:\Users\Administrator\Desktop\截图.png";
}
private void button1_Click(object sender, EventArgs e)
{
pictureBox1.ImageLocation = "";
File.Delete(@"C:\Users\Administrator\Desktop\截图.png");
}
我试过了,这个不报错,你看看是不是其他地方在使用这个文件!
我刚刚测试过,占用不是picturebox1.imagelocation="c:\aaa.pic";引起的。
估计你其它地方有bitmap 或者image 加载过这张图片,调用Dispose()方法就行了