【发布时间】:2013-03-07 22:11:09
【问题描述】:
现在我有一个将文件复制到另一个目录的主窗体。
我想在 catch 语句中处理“同名文件已存在”的情况。
我希望通过弹出另一个窗口来完成此操作,询问是通过按钮替换还是保留。然后使用 if 语句检查单击了哪个按钮
当前代码:
catch (IOException x)
{
Copy copy = new Copy();
copy.ShowDialog();
}
目标:
catch (IOException x)
{
Copy copy = new Copy();
copy.ShowDialog();
if (//Replace button was clicked)
do this
else if (//Keep button was clicked)
do this
}
我似乎找不到适合此目的的方法。
【问题讨论】:
-
我宁愿使用 catch 处理我无法处理的异常。因此,在您的情况下,如果您已经知道这个问题可能会出现,那么您可以或应该自己检查文件是否已经存在。
-
为什么不使用带有 YesNo 按钮的简单 MessageBox? (并且真的不要使用异常来处理这种决定。一个简单的 File.Exists 应该可以解决问题)
标签: c# winforms visual-studio-2010 file-io