c#应用程序在主窗体关闭时退出

Wol*_*fyD 7 c# exit hide winforms

我正在编写一个多表单应用程序,我希望能够在应用程序关闭时关闭Form1.
现在我this.Hide用来隐藏表格.有没有办法设置它以便我可以关闭任何表单,或者应用程序应该仅在所有表单都关闭时存在?

我想我记得曾经在某个时刻看过类似的东西,但那可能不是视觉工作室和c#.

dma*_*may 15

在你的Program.cs文件中你有一个像这样的行Application.Run(new Form1()).替换为

var main_form = new Form1();
main_form.Show();
Application.Run();
Run Code Online (Sandbox Code Playgroud)

您还需要通过调用显式关闭应用程序Application.Exit().

  • 谢谢!它工作,但我必须这样做:`var main_form = new Form1();``main_form.Show();``Application.Run();`或者它只是启动时没有显示任何形式.再次感谢! (2认同)

小智 5

一种策略是执行以下操作:

private void Form1_FormClosed(object sender, FormClosedEventArgs e)
{
    if (Application.OpenForms.Count == 0)
        Application.Exit();
    }
}
Run Code Online (Sandbox Code Playgroud)

如果您将它放在所有表单上,当最后一个关闭时,应用程序将退出。