2 u012579760 u012579760 于 2014.09.01 09:30 提问

winform中picturebox修改照片

win7系统,winform程序。
做的是一个关于管理个人信息的winform项目,其中有利用picturebox上传个人照片并保存照片路径到数据库,第一次选择照片可以成功上传和显示,但是如果要做修改照片或者如果第一次选错了第二次选择时不成功。
首次选择照片代码如下:

using (OpenFileDialog ofd = new OpenFileDialog())
           {
               ofd.Title = "请选择要插入的图片";
               ofd.CheckFileExists = true;
            ofd.CheckPathExists = true;
            if (ofd.ShowDialog() == DialogResult.OK)
            {
                string oldName = ofd.FileName;
                string[] splitName = oldName.Split('.');
                string ext = splitName[splitName.Length - 1];
                string dbName = "Photos/" + R_id + "." + ext;
                string newName = AppDomain.CurrentDomain.BaseDirectory + dbName;
                File.Copy(oldName, newName, true);
                Image img = Image.FromFile(newName);
                pictureBox1.Image = img;
                pictureBox1.ImageLocation = dbName;
            }
        }

这个时候可以成功选择照片,可以把照片从oldName的路径下复制到项目Photo文件夹newName路径下并且可以成功显示在picturebox中。
但是如果第一次选择照片选择错了,需要再次选择时就会报错:图片(相对项目的路径)“正由另一进程使用,因此该进程无法访问此文件”。第一次上传成功了的话,再次编辑时也是一样的错误。
我尝试过在重新选择时,如果选择成功就把原图片删除再上传,但是也不行。。。

求大神帮帮忙~~

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!