Panel 面板控件

Panel 面板控件

Panel 是一个面板控件,主要目的是用来布局,它可以容纳其它控件。

当我们把其它控件放到 Panel 里面后,拖动 Panel 时内部的子控件会跟着一起移动。

和 GroupBox 有点类似,但 Panel 默认没有边框。

运行的时候可以看到 Panel 区域是没有边框线的。

常用属性

属性说明
Controls内部子控件的集合
AutoScroll内容超出面板大小时是否自动显示滚动条
BorderStyle边框样式(None、FixedSingle、Fixed3D),默认 None
Dock停靠方式
Padding内边距
BackColor背景颜色
Enabled是否启用,设为 false 时内部所有子控件也会禁用
Visible是否可见
// 后台动态添加子控件
Panel panel = new Panel();
panel.Size = new Size(300, 200);
panel.BorderStyle = BorderStyle.FixedSingle;
panel.AutoScroll = true;

Button btn = new Button();
btn.Text = "按钮";
btn.Location = new Point(10, 10);
panel.Controls.Add(btn);

this.Controls.Add(panel);Code language: JavaScript (javascript)

显示边框

Panel 默认无边框,如需显示可以设置 BorderStyle:

this.panel1.BorderStyle = BorderStyle.FixedSingle;   // 单线边框
this.panel1.BorderStyle = BorderStyle.Fixed3D;      // 3D 凹陷边框Code language: JavaScript (javascript)

滚动条

当内部控件超出 Panel 可见区域时,开启 AutoScroll 即可自动出现滚动条:

this.panel1.AutoScroll = true;Code language: JavaScript (javascript)

与 GroupBox 的对比

对比项PanelGroupBox
边框默认无,可设置默认有
标题不支持支持 Text 属性
滚动条支持 AutoScroll不支持
典型用途容器布局、滚动区域逻辑分组、RadioButton 互斥

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注