我有一个保存文本文件的按钮,但是如果用户在保存对话框中选择取消,我会收到以下错误消息:
未处理的类型' 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
答案 0 :(得分:3)
取消对话框时,我认为SaveFileDialog1.Filename
为Nothing
。
您应该检查对话框的结果:
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