单击“X”按钮保存文件

时间:2013-12-19 20:20:34

标签: c#

我试图让WTF应用程序用户点击“X”按钮来制作保存文件,现在这可以通过Message.Show来完成或者直接要求保存。我已经创建了一个代码但是当用户单击“保存”或“取消”时,错误窗口会显示该程序开始工作并且它想要向Microsoft发送信息。

private void Window_Closing(object sender, CancelEventArgs e)
{
   Microsoft.Win32.SaveFileDialog saveDlg = new Microsoft.Win32.SaveFileDialog();
   saveDlg.DefaultExt = ".rtf";
   saveDlg.Filter = "RTF Documents (.rtf)|*rtf";

   Nullable<bool> rezultat = saveDlg.ShowDialog();
   if (rezultat == true)
   {
      string filename = saveDlg.FileName;
      System.IO.File.Create(filename);
   }
   {
      this.Close();
   }
}

2 个答案:

答案 0 :(得分:6)

我认为您可能希望有else

else
{
    this.Close();
}

其次,在this.Close();事件中调用Window_Closing只是要求Stack Overflow异常。

您无需再次关闭窗口。它已经关闭了。

答案 1 :(得分:1)

使用if条件使用适当的else语句修改代码

    private void Window_Closing(object sender, CancelEventArgs e)
    {
        Microsoft.Win32.SaveFileDialog saveDlg = new Microsoft.Win32.SaveFileDialog();
        saveDlg.DefaultExt = ".rtf";
        saveDlg.Filter = "RTF Documents (.rtf)|*rtf";

        Nullable<bool> rezultat = saveDlg.ShowDialog();
        if (rezultat == true)
        {
            string filename = saveDlg.FileName;
            System.IO.File.Create(filename);
        }
        else
        {
            this.Close();
        }
    }