WPF布局:
Canvas:
基本面板,仅仅支持用于设备无关的坐标来定位元素。这是一种传统的布置用户界面的方法,在Win32、MFC、甚至WinForm时期都是这样做的。Canvas用四个附加属性Left、Top、Right、Bottom来定位子元素。 例: <Button Canvas.Left = "24" Canvas.Top = 50 /> 注意只允许设置一个横向和纵向成对的坐标,如Left和Top,以及Right和Bottom。
StackPanel:
用于顺序垂直或者水平的排列子元素,通过Oritentation属性来控制水平(Horizontial)和垂直(Vertical)排列,通过FlowDirection属性来控制排列的方向(从上到下,从左到右)。 例:水平排列<StackPanel Orientation = "Horizontial" FlowDirection = "RightToLeft">
WarpPanel:
与StackPanel类似,不同之处在于当没有空间放置子元素时会自动将其放置在下一行或者下一列中,它特别适用子元素个数不确定的情况。同样通过Oritentation属性来控制水平(Horizontial)和垂直(Vertical)排列,属性ItemHeight和ItemWidth用来允许子元素的最大高度和宽度。
DockPanel:
可以使子元素停靠在面板的某一条边上,然后拉伸元素以填满全部的宽度或高度,它有一个Dock附加属性,子元素用4个值来控制其停靠,Left、Top、Right、Bottom。默认情况下最后一个添加到DockPanel的子元素将填满所有剩余的空间。