关闭主窗体
本文关键字:窗体 | 更新日期: 2023-09-27 18:24:27
我正在使用c#Windows窗体开发一个简单的应用程序。主窗体打开另一个窗体,但我不想要这两个窗体。我希望当第二个窗体打开时,第一个窗体关闭。由于第一种形式是主要使用
this.Close();
显示第二种形式后,将关闭两者。所以我用这个代替
private void btnSubmit_Click(object sender, EventArgs e)
{
frmData QS = new frmData();
QS.Show();
this.WindowState = FormWindowState.Minimized;
this.ShowInTaskbar = false;
}
private void frmData_FormClosed(object sender, FormClosedEventArgs e)
{
Application.Exit();
}
我想知道是否还有其他方法可以做到这一点。
任何帮助都将不胜感激。
不要将主窗体作为参数传递给Application.Run
:
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
MainForm frmMain = new MainForm();
frmMain.Show();
Application.Run();
因此,当显示另一种形式时,您将能够关闭它:
private void btnSubmit_Click(object sender, EventArgs e)
{
frmData QS = new frmData();
QS.Show();
this.Close();
}
要关闭应用程序,您应该使用
Application.Exit();
隐藏第一个表单。
private void btnSubmit_Click(object sender, EventArgs e)
{
frmData QS = new frmData();
QS.Show();
this.Hide();
}
private void frmData_FormClosed(object sender, FormClosedEventArgs e)
{
Application.Exit();
}
实际上,如果关闭主窗体,就无法关闭主窗体——它会关闭同一项目的所有窗体。你只能把它藏起来。
顺便说一句,你可以只在一行中打开并显示表单,如下所示:new FormName().Show();