TableLayoutPanelEx 增强表格布局面板
控件名称
TableLayoutPanelEx

中文名称
增强表格布局面板
控件概述
TableLayoutPanelEx 是一个功能强大的表格布局容器控件,在标准 TableLayoutPanel 基础上进行了大量增强,支持通过拖拽方式快速构建表单界面。提供网格线显示、表头行/列、单元格合并、控件对齐、行列尺寸精确控制等丰富功能,并内置设计时扩展属性支持,可在属性窗口直接配置子控件的位置和布局行为。
主要特性
- 行列控制:支持任意行列数配置,可精确设置每行高度和每列宽度
- 表头支持:支持标题行(HeaderRow)和标题列(HeaderColumn),标题行可自动合并为一整行并显示标题文本
- 单元格合并:支持 RowSpan(行合并)和 ColumnSpan(列合并),合并后的内部网格线自动隐藏
- 控件对齐:支持 9 种对齐方式(Stretch=false 时生效),包括左上、居中、右下等
- 拉伸控制:每个子控件可独立设置是否拉伸填满单元格,不拉伸时保持原始尺寸
- 表格对齐:当表格尺寸小于控件尺寸时,支持 9 种表格在控件内的对齐方式
- 网格线显示:支持显示/隐藏网格线,可自定义网格线颜色和宽度
- 独立边框:控件外边框与表格网格线颜色独立设置,边框默认宽度为 0(无边框)
- 设计时支持:通过 IExtenderProvider 为子控件提供扩展属性,在属性窗口直接设置行号、列号、合并、拉伸、对齐
属性说明
布局属性
| 属性名 | 类型 | 默认值 | 说明 |
|---|---|---|---|
ColumnCount |
int | 2 | 列数 |
RowCount |
int | 4 | 行数 |
ColumnWidths |
int[] | null | 列宽度数组(像素),为空时自动均分。0 表示自动分配剩余宽度 示例: new int[]{90,0,90,0} 表示第1、3列固定90像素,第2、4列自动平分剩余宽度 |
RowHeights |
int[] | null | 行高度数组(像素),为空时自动均分。数组中的 0 会被替换为 35 示例: new int[]{35,35,35,60} |
CellPadding |
Padding | 4,4,4,4 | 单元格内边距,控件与单元格边框之间的间隙 |
Padding |
Padding | 4,4,4,4 | 控件内边距,表格与控件边界之间的间隙。设置后表格四周会留出空白区域,避免边框贴边 |
TableAlignment |
ContentAlignment | TopLeft | 表格在控件内的对齐方式。当表格总尺寸小于控件尺寸时生效 |