Visual Studio C# - X Button 只关闭一个窗体而不是整个程序

Visual Studio C# - X Button only closes one form rather than the whole program

所以我的问题很简单,我有一个带有登录功能的程序,如果一切顺利,它会打开另一个表单并隐藏自己。

我的问题是,在打开的新表单中,点击 X 按钮关闭 window 只会关闭表单,但会留下另一个 运行,连同该过程。

我有一个关闭程序的退出按钮,但是有什么方法可以让 X 按钮完全关闭程序吗?

谢谢!

您是否尝试过在关闭事件中使用 Application.Exit() handler.Also 如果您创建了任何线程,您需要确保将它们转换为背景。

在您的按钮单击事件处理程序中使用 Application.Exit()。根据文档,它终止所有消息循环并关闭所有 windows 从而使您的表单有可能执行其清理代码(在 Form.OnClose 等中)。

您需要处理 Closed 或 'FormClosed' 事件。关闭表单时会引发此事件。

创建子窗体时使用其中一个。

childForm.Closed += (s, ev) => Application.Exit();
childForm.FormClosed += (s, ev) => Application.Exit();

更新:

抱歉,我可能忽略了问题的最后一部分,因为您有 X 按钮,其中有 Click 事件,您可以简单地对该事件调用 Application.Exit();

如果您有 Form1、Form2 并且需要在关闭按钮写入中关闭 Form2

this.Close();

如果需要关闭 Form1(Main) 那么

Application.Exit();