2011-05-01 54 views
8

我现在正在使用winforms。 我有主窗体“form1”,我有一个打开form2的按钮。 当我打开form2我想form1消失。当用户点击form2上的x按钮时,我希望它关闭并返回到form1。我不想使用模态窗口。Winforms在窗体之间切换

回答

18
private void button1_Click(object sender, EventArgs e) { 
     var frm = new Form2(); 
     frm.Location = this.Location; 
     frm.StartPosition = FormStartPosition.Manual; 
     frm.FormClosing += delegate { this.Show(); }; 
     frm.Show(); 
     this.Hide(); 
    } 
+1

尼斯一个,我是用owner属性截止到这一点,但是这将做到这一点,其实更容易。 – MStp 2012-01-30 01:17:12

0

为了不改变窗体的属性,只需使用Form1.cs代码ShowDialog()方法打开Form2。这将停用Form1

void OpenSecondForm() 
{ 
    Form form2 = new Form(); 
    form2.ShowDialog(); 
}