今天做项目的时候遇到一个问题:在界面左边的菜单栏点击按钮,右边区域动态加载对应的窗口。几经测试,最终使用Panel+Form的方式实现,在此做个记录:
- 移除控件(单项点击没毛病,多项目点击一定要移除)
this.panel1.Controls.Clear();
- 设置窗体为非顶级窗体
form1.TopLevel = false;
- 设置窗体没有边框
form1.FormBorderStyle = FormBorderStyle.None;
- 设置窗体填充整个Panel
form1.Dock = System.Windows.Forms.DockStyle.Fill;
- 将窗体添加至Panel
this.panel1.Controls.Add(form1);
- 将窗体显示
form1.Show();