C# 已调用FormClosing事件,但未发生任何操作

C# 已调用FormClosing事件,但未发生任何操作,c#,C#,我试图在表单关闭后立即保存该文件,但它无法正常工作。它显示消息,但当我告诉程序我想保存时,什么也没有发生,就好像它执行了一个返回 this.FormClosing += new FormClosingEventHandler(OverrideEventClosing); private void OverrideEventClosing(object sender, FormClosingEventArgs e) { DialogResult dialogResult = MessageBo

我试图在表单关闭后立即保存该文件,但它无法正常工作。它显示消息,但当我告诉程序我想保存时,什么也没有发生,就好像它执行了一个返回

this.FormClosing += new FormClosingEventHandler(OverrideEventClosing);

private void OverrideEventClosing(object sender, FormClosingEventArgs e) {
 DialogResult dialogResult = MessageBox.Show("Do You Want To Save Your Data", "CodeJuggler", MessageBoxButtons.YesNo);
 if (dialogResult == DialogResult.Yes) {
  string myExePath = System.Reflection.Assembly.GetEntryAssembly().Location;
  System.IO.StreamWriter file = new System.IO.StreamWriter(@ "C:\DB.txt");

  foreach(ListViewItem cliente in listView1.Items) {
   file.WriteLine(string.Format("{0}|{1}|{2}|{3}", cliente.SubItems[0].Text, cliente.SubItems[1].Text, cliente.SubItems[2].Text, cliente.SubItems[3].Text));
  }
 }

}

写入后刷新并关闭流。foreach之后

使用未列单行添加解决问题

项目>添加新项>应用程序清单文件


e、 Cancel=true将停止窗体关闭。已删除此行,但未发生任何事件引发异常?是否可以使用调试器?此工具将显示运行此代码时发生的情况。@SharpAlways可能还有另一个FormClosing处理程序设置e.Cancel标志?很难说问题出在哪里,因为根据您提供的信息,如果您仅使用FormClosing处理程序创建一个完整的新应用程序,它将正常关闭,那么我无法重现这个问题。
<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />
string myExePath = AppDomain.CurrentDomain.BaseDirectory;
System.IO.StreamWriter File = new System.IO.StreamWriter(myExePath + @"\item.txt");