当我有几个表单时单击标题栏中的十字形时,如何关闭应用程序?

时间:2011-10-31 14:00:25

标签: c# winforms

我搜索了stackoverflow并找到了类似的问题。

由于我还是C#编程的初学者,我无法理解解决方案的含义。

我有一个c#windows窗体应用程序,它有多种形式。

因为它只在关闭主窗体时关闭,我该如何对其进行编码,以便当我关闭其他窗体时,应用程序也会关闭?

编辑:大多数人都告诉我在结束活动中对其进行编码。我可以知道事件发生在哪里吗?感谢。

4 个答案:

答案 0 :(得分:2)

不确定为什么你认为答案会比你已经找到的答案更容易但是......

表单有一个名为“Closing”的事件(See Here)。您应该处理该事件,然后在该函数内部,您可以使用以下行关闭您的应用程序...

System.Windows.Forms.Application.Exit();

注意:这适用于WinForms应用程序

编辑:

你可以使用像这样的VS设计师模式注册结束事件......

  1. 选择表单
  2. 转到“活动”窗口
  3. 双击“结束”事件选项
  4. 更详细的回答here

    (谷歌,如果你不能解决这个问题)

    您可以在此代码中注册活动......

    //In Form constructor function
    this.Closing += new EventHandler(Form1_Closing);
    
    private void Form1_Closing(object sender, System.ComponentModel.CancelEventArgs e)
    {
       //Handle event here
       System.Windows.Forms.Application.Exit();
    }
    

答案 1 :(得分:1)

在WPF中,您可以调用Application.Current.Shutdown来关闭应用程序。 在您的窗口中注册Window.Closed - 活动并致电Application.Current.Shutdown()

<强>更新 对于Winforms,请使用FormClosedEvent或覆盖OnFormClosed。由其他人编写的alreads,使用Application.Exit终止应用程序 WPF代表Windows Presentation Foundation,是构建良好用户界面的框架

答案 2 :(得分:1)

非常简单。如果要从任何时间点退出应用程序,请使用以下代码。

Application.Exit();

答案 3 :(得分:0)

查看Application.Exit Method

  

通知所有消息泵必须终止,然后关闭   消息处理完毕后的所有应用程序窗口。

还有一个重载允许接收退出事件的表单通知它想要取消。