WPF布局容器

1.StackPanel:堆栈面板,经过Orientation属性设置子元素的布局排列方向为“Vertical”(垂直)和“Horizontal”(水平),不写其默认值为“Vertical”,当设置为“Vertical”时子元素会沿垂直方向拉伸,反之设置为“Horizontal”时子元素会沿水平方向拉伸。

2.DockPanel:支持子元素停靠在面板的任意一条边上,经过附加属性Dock控制他们的停靠位置(Left、Top、Right、Bottom),填充空间按照“先到先得”的原则,最后一个加入面板的子元素将填满剩下的空间,如不想将最后加入面板的元素填满剩下的空间将属性LastChildFill值设为“False”,默认为“True”。

3.WrapPanel:可换行面板与StackPanel类似,经过Orientation属性设置子元素的排列顺序,从左至右按顺序位置定位子元素,当前行没法放下元素时断开至下一行,或者排序按照从上至下或从右至左的顺序进行,经过ItemHeight能够设置当前面板中全部子元素的高度,固然也有ItemWidth设置全部子元素的宽度。

 4.Canvas:面板是最轻量级的布局容器,它不会自动调整内部元素的排列和大小,不指定元素位置,元素将默认显示在画布的左上方。Canvas主要用来画图。Canvas默认不会自动裁剪超过自身范围的内容,即溢出的内容会显示在Canvas外面,这是由于Canvas的ClipToBounds属性默认值是“False”,咱们能够显式地设置为“True”来裁剪多出的内容。下面XAML代码简单演示了Canvas面板的使用。

5.Grid:比起其余Panel,功能是最多最为复杂的布局控件。它由<Grid.ColumnDefinitions>列元素集合和<Grid.RowDefinitions>行元素集合两种元素组成。而放在Grid面板中的元素必须显式采用附加属性定义其所在行和列,不然元素均默认放置在第0行第0列。布局