c# .net winform 怎么实现在打开一个新窗体时,隐藏就窗体;关闭新窗体时,恢复显示旧窗体?

如题所述

在Form1中,点击button1,显示Form2

private void button1_Click(object sender, EventArgs e)
{
//隐藏当前窗口
this.Visible = false;
Form2 f2 = new Form2();
//显示Form2
f2.ShowDialog();  
//显示当前窗口 
this.Visible = true;
}

追问

那关闭新窗体时,恢复旧窗体的显示呢?

追答

Form2显示采用了Dialog模式,也就是,只有关闭了Form2 ,才会执行f2.ShowDialog()后的语句 this.Visible = true。 而 this.Visible = true 将使Form1再次可见

追问

果然是的,只不过关闭第二个窗口时,windows 任务栏,可以看到明确的一个 窗口关闭 和 一个 窗口 打开。

追答

是的,上述过程在任务栏上会有所显示。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-10-12
form1的代码
form2 frm2 = new form2();
frm2.show();
this.visible=false;

form2的代码
form1 frm1 = new form1();
frm1.show();
this.visible=false;追问

这样是可以达到效果,但是这样关闭程序时只能释放最后一个new 实例的资源 , 不能释放前面new 实例的资源。

追答

form2的关闭按钮写
Application.Exit();

相似回答