_nice 2014-09-01 01:30 采纳率: 0%
浏览 1768

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中。
但是如果第一次选择照片选择错了,需要再次选择时就会报错:图片(相对项目的路径)“正由另一进程使用,因此该进程无法访问此文件”。第一次上传成功了的话,再次编辑时也是一样的错误。
我尝试过在重新选择时,如果选择成功就把原图片删除再上传,但是也不行。。。

求大神帮帮忙~~

  • 写回答

0条回答 默认 最新

    报告相同问题?

    悬赏问题

    • ¥15 delta降尺度计算的一些细节,有偿
    • ¥15 Arduino红外遥控代码有问题
    • ¥15 数值计算离散正交多项式
    • ¥30 数值计算均差系数编程
    • ¥15 redis-full-check比较 两个集群的数据出错
    • ¥15 Matlab编程问题
    • ¥15 训练的多模态特征融合模型准确度很低怎么办
    • ¥15 kylin启动报错log4j类冲突
    • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大
    • ¥15 import arcpy出现importing _arcgisscripting 找不到相关程序