C#Panel的妙用
一般来说Panel除了用作面板控件的排版外,他还有其他的功能。如下:
新建一个面板From1,在From1中添加一个Panel控件。如下:
再新建一个窗体命名为“子窗体”。在子窗体上放入若干控件,并设计好。
在From1.s的From_Load函数添加如下代码:
子面板 newPanel = new 子面板(); //新建一个子面板对象
newPanel.TopLevel = false; //将子面板设置为非顶级窗口显示
panel1.Controls.Add((Control)newPanel); //将新建的子面板对象添加到当前panel1中
newPanel.Show(); //然后将子面板对象显示
最终显示的结果为:
红色框体为panel区域。字面板会在panel中显示,并可以拖放移动。但是如果拖动范围超过了红框的话就会将超出的部分隐藏。如下:
为了美观,子面板最好设计成不能够拖动的。最好的办法就是将字面板大小设置为最大化。然后使最小化和最大化甚至是退出的按钮全部隐藏。
代码作如下修改:
子面板 newPanel = new 子面板();
newPanel.TopLevel = false;
panel1.Controls.Add((Control)newPanel);
newPanel.FormBorderStyle = FormBorderStyle.None; //将子面板显示风格为None,即没有标题栏
newPanel.Dock = DockStyle.Fill; //在将自面板填充在panel控件上
newPanel.Show();
最后的结果如下: