最近在做一個C# 的winform客戶端程序,要實現在打開新的窗口時將原來打開的窗口關閉,但是想在關閉新打開的窗口是將原來的那個窗口再次打開,在網上查找各種資料,找了很多代碼,都是通過窗口.Hide()和窗口.Show()方法實現的,但都沒有實現我想要的功能,關閉新窗口打開原來的窗口時發現原來的窗口里面的所有數據都沒有了,而且打開新窗口時原來的窗口不會顯示出來。
通過網上查找資料和認真研讀C# winform 方面相關的書籍發現,窗體有Visible屬性,設置為true窗體將顯示出來,現將具體代碼粘貼如下:
打開新的窗體Form2時隱藏原來的窗體Form1
Form2 fm = new Form2(this);
this.Hide();//隱藏現在這個窗口
fm.Show() ;//新窗口顯現
關閉新的窗體Form2時顯示原來的窗體Form1,
public partial class Form2 : Form
{
private Form1 returnForm1 = null;
public Form2(Form1 F1)
{
InitializeComponent();
// 接受Form1對象
this.returnForm1 = F1;
}
}
為Form2添加Form2_FormClosing事件
private void Form2_FormClosing(object sender, FormClosingEventArgs e)
{
//恢復Form1
this.returnForm1.Visible = true;
}
---------------------
作者:隨心小寶
來源:CNBLOGS
原文:https://www.cnblogs.com/hexiaobao/p/7692790.html