使用this.hide()时表单关闭
本文关键字:表单 this hide 使用 | 更新日期: 2024-10-21 12:29:53
每当我使用它时。隐藏();表单关闭,而不仅仅是隐藏??我打算用这个。隐藏();以将我的表单最小化到系统托盘。
这将关闭窗体.
private void label14_Click(object sender, EventArgs e)
{
this.Hide();
}
这个表单是启动的第二个表单,它从第一个表单调用,如下所示:
Form frm = new Main();
frm.ShowDialog();
我确实试过用frm。显示();但是随后程序再次终止。。我想问题出在表单最初的启动方式上?
编辑:我不得不更改表单的调用方式。在第一个表单中,我不得不使用this.hide而不是this.close。
您必须这样做:
this.WindowState = FormWindowState.Minimized;
实际上,当使用Hide()时,表单仍然是打开的,但隐藏在某个地方。因此,在我看来,使用Hide()方法并再次创建一个新对象来显示表单不是正确的做法。要在它们之间切换,最好创建一个表单管理器类。
根据评论,这可能会解决问题(如果不能简单地调用Show()方法):
Form1 form = Application.OpenForms["Form1"] as Form1 ;
if (form != null)
{
form.Show();
}
仅隐藏方法集可见性。关闭并处理内部对象!