4大基础布局控件 : Grid 、 StackPanel 、 Canvas 、 Border
布局原则 :
—— 由内而外
—— 下级容器决定上级容器
Grid :
布局类似于 Table , 主要是用来设置 "行" 和 "列" 的显示 ,
Grid 用 Grid.RowDefinitions 和 Grid.ColumnDefinitions 定义行数和列数 , 在 Grid 内部的 控件 上 , 使用 Grid.Row="1" 来设置 控件所在 Grid 的行 , Grid.Column="1" 设置所在列 。 Grid.RowSpan 用来指定占据的行数 , Grid.ColumnSpan 用来指定占据的列数
Canvas :
绝对定位控件 , 速度最快 , 可用于游戏
是一个流式布局的继承品 , 继承了流式布局的模式 , 用它做一些堆砌 , 没有绝对的行号和列号 , 只有距 上.左 的距离 , 一般用来做画布 , 实现简单动画。
Canvas 布局 , 如果两个控件的 ZIndex 值相同时 , 如果有位置重叠 , 那么后绘制的图形 , 会覆盖掉先绘制的图形
可以设定 Canvas 里 子控件 针对 Canvas 的绝对位置值
StackPanel :
自动定位控件 , 推荐使用于小区域 。
放在 StackPanel 里的所有 控件元素 , 可以横向显示 也可以竖向显示 , 不管怎么显示 , 所有控件之间都不会存在重叠遮挡 。
Border :
基本的控件容器 , 只是能把控件放在里面 。
Blend 里的 Properties 属性页签里的 Layout 就是用来设置控件布局的
转载于:https://www.cnblogs.com/duogemajia/archive/2012/02/21/2361165.html