WPF入门-2.布局控件
WPF 入门(二):布局控件
常见布局控件一览
控件名 | 说明 |
---|---|
Grid | 灵活分行分列 |
StackPanel | 垂直/水平线性排列 |
DockPanel | 停靠在上下左右或填充 |
WrapPanel | 自动换行排列 |
Canvas | 绝对定位 |
UniformGrid | 等宽等高网格 |
Viewbox | 可整体缩放内容 |
1. Grid(网格布局)
Grid 是最常用的布局控件之一,可以将界面划分为行和列,实现灵活的网格布局。
常用属性:
属性 | 说明 |
---|---|
RowDefinitions | 定义行集合 |
ColumnDefinitions | 定义列集合 |
Grid.Row | 指定子元素所在的行 |
Grid.Column | 指定子元素所在的列 |
Grid.RowSpan | 子元素跨越的行数 |
Grid.ColumnSpan | 子元素跨越的列数 |
示例:
1 | <Grid> |
Grid 适合用于需要复杂布局的场景。
Height 和 Width 属性说明
在 WPF 布局控件中,Height(高度)和 Width(宽度)属性用于设置控件的尺寸。
取值 | 说明 |
---|---|
数值(如100) | 以设备无关像素(DIP)为单位的长度,1 DIP=1/96 英寸 |
Auto | 自动适应内容或父容器,由布局系统决定实际大小 |
* | 用于 Grid 行高/列宽,按比例分配剩余空间,如2表示两份,表示一份 |
示例:
1 | <Grid.RowDefinitions> |
2. StackPanel(堆叠面板)
StackPanel 会将子元素按照指定方向(垂直或水平)依次排列。
常用属性:
属性 | 说明 |
---|---|
Orientation | 排列方向,Vertical(默认)或 Horizontal |
细节说明:
- 通常不需要显式设置 Height 和 Width,默认会根据内容自动调整大小。如果父容器有限制,也可以手动设置。
- 内部元素不会重叠,而是依次排列。
- 如果内容超出 StackPanel 的宽度(或高度),超出部分会被裁剪(不可见),不会自动换行。
- 如需自动换行效果,可使用 WrapPanel。
示例:
1 | <StackPanel Orientation="Vertical"> |
StackPanel 适合用于简单的线性排列场景。
3. DockPanel(停靠面板)
占位
4. WrapPanel(换行面板)
占位
5. Canvas(画布)
占位
6. UniformGrid(等距网格)
占位
7. ViewBox(缩放容器)
占位