WPF布局
WPF画布的形式,重叠部分就不需要画了,叠加效果,渲染的时候框架自身处理
1、Grid网格

2、Stack堆栈

3、DockPanel 停靠

dock码头,panel面板
默认靠左对齐,类似StackPanel,只不过最后一个对象会填满剩余空间
1、LastChildFill="False" 最后一个就不会占满剩余空间
设高度,会居中

对比:StackPanel是自上而下垂直排列,最后一个也不会占满剩余空间

2、DockPanel.Dock 内部元素常用属性
快速布局
剩余部分填满,注意顺序,剩余部分重新划分对齐,先到显得
<DockPanel> <Button Content="标题栏" DockPanel.Dock="Top" /> <Button Content="状态栏" DockPanel.Dock="Bottom" /> <Button Content="菜单栏" /> <Button Content="消息栏" DockPanel.Dock="Right"/> <Button Content="内容栏" /> </DockPanel>
按住Alt+箭头上下,可以整行移动上下行

4、WarpPanel

Wrap:包,排不下会折行显示
默认情况水平方向,从左向右
也可以垂直方向,从上向下
常用属性:Orientation 布局方向

不规则的网格大小排列
按照最大的行内高度进行换行的,自然折行

button会默认高度,不会占满高度
stockpanel默认会占满高度,一行展示,展示不开也不折行

可以设置Vertical 垂直,最长宽度折行

底层原理还是通过尺寸来计算的
瀑布流
查找最短列排列

应用
防Windows桌面的排列,从上向下,折行向右

现在这种自上而下的排列布局,简单的可以这样,复杂的还是自定义

需求:如何均分空白区域
5、UniformGrid
Uniform制服,统一的

拓控件还找不到
自动均分局域,列不够,自动缩小,创建新列
Rows,均分成多少行
6行

两行

Columns,均分成多少列
两行,10列

强制两行两列

窗口显示不出来
后面的还会继续往后排列
应用
均分的都可以

经常会被Grid代替
浙公网安备 33010602011771号