高手帮忙看看,解释解释

w5224108070 2010-01-01 12:51:23

if (openFile.ShowDialog()==DialogResult.OK)
{
picStudent.Image.Dispose();
File.Copy(openFile.FileName, string.Format(@"data\{0}\{1}.gif", cboClass.Text, txtNumber.Text), true);
picStudent.Image = Image.FromFile(openFile.FileName);
picStudent.Image.Tag = openFile.FileName;
}

为什么我这段代码,加进if语句判断就会出现 data\网编\1.gif正由另一进程使用?(我的picStudnet图像框原先调用了这幅图像)但我原先的代码是这样
openFile.ShowDialog();
picStudent.Image.Dispose();
File.Copy(openFile.FileName, string.Format(@"data\{0}\{1}.gif", cboClass.Text, txtNumber.Text), true);
picStudent.Image = Image.FromFile(openFile.FileName);
picStudent.Image.Tag = openFile.FileName;
却没出现这个问题
...全文
88 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
yncloudy 2010-01-02
  • 打赏
  • 举报
回复
Dispose()。。。。。。释放资源。。。。
rcy5211314 2010-01-02
  • 打赏
  • 举报
回复
picStudent.Image.Dispose();这有什么用??
mngzilin 2010-01-01
  • 打赏
  • 举报
回复
picStudent.Image.Dispose();//放到if外边
if (openFile.ShowDialog()==DialogResult.OK)
{
File.Copy(openFile.FileName, string.Format(@"data\{0}\{1}.gif", cboClass.Text, txtNumber.Text), true);
picStudent.Image = Image.FromFile(openFile.FileName);
picStudent.Image.Tag = openFile.FileName;
}

110,571

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧