读书人

winform中在MDI主窗体显示多个子窗体,

发布时间: 2013-10-21 17:02:52 作者: rapoo

winform中在MDI主窗体显示多个子窗体
我想让子窗体在主窗体的Panel中显示,实现过程是这样的:单击主窗体菜单的一个按钮,在panel中显示一个子窗体,单击主窗体菜单的另一个按钮时,前一个子窗体关闭,显示另一个子窗体。不知道我的想法怎么才能实现,请大家指点一下,谢谢。
[解决办法]

private void button1_Click(object sender, EventArgs e)
{
panel1.Clear(); // 清空的是当前panel上的子窗体
ChildForm child = new ChildForm();
child.TopLevel = false;
child.Dock = System.Windows.Forms.DockStyle.Fill;
child.FormBorderStyle = FormBorderStyle.None;
//child.Parent = this.panel1;
this.panel1.Controls.Add(child);
child.Show();
}

[解决办法]
非MDI

if (panel1.Tag != null && panel1.Tag is Form)
{
((Form)panel1.Tag).Close();
}
Form2 frm = new Form2();
frm.TopLevel = false;
frm.Parent = panel1;
panel1.Tag = frm;
frm.Show();


读书人网 >C#

热点推荐