原文链接:http://www.cnblogs.com/Jennifer/articles/1987757.html
Canvas、StackPanel、WrapPanel、DockPanel和Grid是WPF中主要的5种内建面板,这些面板类都位于System.Windows.Controls命名空间下。
StackPanel是一个受欢迎的面板,因为它方便好用,它会顺序对它的子元素进行排列。它是少数几个没有定义任何附加属性的面板之一。由于没有附加属性来排列子元素,只有一种方法可以定制StackPanel的行为——设置Orientation属性为Horizontal或Vertical,Vertical是默认值。
<StackPanel>
<StackPanel Width="100">
<Button Background="Red">NoScaling</Button>
<Button Background="Orange">
<Button.RenderTransform>
<ScaleTransform ScaleX="2"></ScaleTransform>
</Button.RenderTransform>
X
</Button>
<Button Background="Yellow">
<Button.RenderTransform>
<ScaleTransform ScaleX="2" ScaleY="2"></ScaleTransform>
</Button.RenderTransform>
X+Y
</Button>
<Button Background="Lime">
<Button.RenderTransform>
<ScaleTransform ScaleY="2"></ScaleTransform>
</Button.RenderTransform>
Y
</Button>
</StackPanel>
</StackPanel>
效果如下图:
当把StackPanel的FlowDirection属性设置为RightToLeft,Orientation属性设置为Horizontal,StackPanel将从右向左排列元素。
Orientation="Vertical"
默认子元素高度是0;
Orientation="Horizontal"
默认子元素宽度是0