隐藏窗体,打开窗体后如果想让它隐藏,然后再显示出来,就判断是不是NULL或者有没有关闭,不然就NEW一个出来,否则就SHOW出来。
当然如果有隐藏的话退出的时候最好用Application.Exit()来关闭程序。
Form fh; private void button6_Click(object sender, EventArgs e) { if (fh == null || fh.IsDisposed) { Form9 f9 = new Form9(); fh = f9; f9.Show(); } else { fh.Show(); }
还有一种情况是打开子窗体时隐藏父窗体,关闭子窗体的时候显示父窗体,用别人的代码吧,我没有测试,应该意思差不多
使用模式对话框ShowDialog方式打开窗体B,当窗体B关闭时必然要返回一个DialogResult,默认为none,类似于openfiledialog和savefiledialog 在窗体A的按钮点击事件中写
Form2 form2 = new Form2(); this.Hide(); if (form2.ShowDialog() == DialogResult.OK) { this.Show(); }
在窗体B的关闭事件中写
private void Form2_FormClosing(object sender, FormClosingEventArgs e) { this.DialogResult = DialogResult.OK; }
如果你想通过窗体B的一个按钮来关闭窗体B,就可以在关闭按钮的点击事件中写
this.Close(); this.DialogResult = DialogResult.OK;
时间: 2024-10-11 21:46:34