一、以对话框的方式显示另一窗口。 在form1内对过按钮点击或其它事件添加以下代码。 form2 fm2 = new form2(); fm2.showdialog(); 特点:当fm2打开后form1无法执行其它操作。只有当fm2关闭后才能继续。 关闭窗口为this.close();
二、在form1内打开form2,form2作为form1的一部份进行显示。
private void Form1_Load(object sender, EventArgs e)
{
var frm = new Form2();
frm.TopLevel = false;
this.panel1.Controls.Add(frm);
frm.Show();
}
三、如果有三个窗体呢,form1,form2,form3,当在form2单击时,让form3,在form1的面板里显示行吗?代码该怎么写?
在Form2中:
private void button1_Click(object sender, EventArgs e)
{
var frm1 = new Form1();
frm1.Show();
frm1.ShowForm(new Form3());
}
在Form1中:
internal void ShowForm(Form frm)
{
frm.TopLevel = false;
this.panel1.Controls.Add(frm);
frm.Show();
}
当然,什么时候选择打开Form1是你自已决定的,不一定在Form2的button1_Click中