取消保存对话框时出现SaveFileDialog错误

时间:2016-05-09 20:08:17

标签: .net vb.net savefiledialog argumentexception

我有一个保存文本文件的按钮,但是如果用户在保存对话框中选择取消,我会收到以下错误消息:

  

未处理的类型' system.argumentexception'发生在mscorlib.dll

     

其他信息:空路径名称不合法。

Private sub cmdSave_Click (sender As object, e As EventArgs) Handles cmdSave.Click
    If rtfTextEditor.Text.Length > 0 then
      SaveFileDialog1.ShowDialog()
      System.IO.File.WriteAllText(SaveFileDialog1.Filename, rtfTextEditor.Text)
    End If
End Sub

2 个答案:

答案 0 :(得分:3)

取消对话框时,我认为SaveFileDialog1.FilenameNothing

您应该检查对话框的结果:

If SaveFileDialog1.ShowDialog = DialogResult.OK Then
    System.IO.File.WriteAllText(SaveFileDialog1.Filename, rtfTextEditor.Text)
End If

答案 1 :(得分:0)

在尝试保存文件之前,如果ShowDialog命令没有等待结果。

SaveFileDialog1.Filename的内容将为null,这可能是错误的来源。您需要检查用户是否点击“保存”:

If SaveFileDialog1.ShowDialog() == true then
    System.IO.File.WriteAllText(SaveFileDialog1.Filename, rtfTextEditor.Text)
End If