WPF 布局控件(继承自 Panel
类, 除了Border
)通过测量(Measure)和排列(Arrange)两个阶段自动计算子元素的位置与尺寸,支持动态适应窗口大小变化。布局控件通过 Children
属性容纳子元素(如按钮、文本框等),支持嵌套组合实现复杂界面。
控件 | 布局方式 |
---|---|
Grid |
网格,根据自定义行和列来设置控件的布局 |
StackPanel |
堆叠,包含的元素在垂直或水平方向排列 |
WrapPanel |
流式布局,自动换行/列 |
DockPanel |
边缘停靠+剩余填充 |
Canvas |
画布,内部元素以像素为单位绝对坐标定位 |
UniformGrid |
均分网格,相当于Grid的简化版,每个单元格的大小相同 |
Border |
装饰的控件,用于绘制边框及背景,在Border中只能有一个子控件 |
Panel基类
Panel 是 Windows Presentation Foundation(WPF)中提供布局支持的所有元素的基类。 Panel派生元素用于在可扩展应用程序标记语言(XAML)和代码中定位和排列元素。 WPF 包含一套全面的派生面板实现,可实现许多复杂布局。 这些派生类公开了启用大多数标准用户界面(UI)方案的属性和方法。 无法找到满足其需求的子排列行为的开发人员可以通过重写 ArrangeOverride 和 MeasureOverride 方法创建新的布局。