使用下面的设置,我可以将窗口的整个宽度着色为紫色。内部堆叠面板为黄绿色,并移至左侧。
<StackPanel HorizontalAlignment="Stretch"
Orientation="Horizontal"
Background="BlueViolet"
Height="70">
<StackPanel HorizontalAlignment="Left"
Orientation="Horizontal"
Background="Chartreuse" >
我原以为如果我将内部堆栈面板的水平对齐方式更改为拉伸,它也会填充所有宽度,但这种情况并没有发生。我尝试过右对齐和拉伸对齐,似乎它不会影响内部控件的宽度。
根据我发现的帖子is实现它的方法(它当然适用于外部控制)。我可以缺少什么吗?我已经删除了外部面板中声明的其他控件(即黄绿色控件的所有兄弟控件),没有任何区别。
A StackPanel
将为其内容提供所需的尽可能多的空间,但也仅提供必要的空间。
如果你想完全填充窗口的宽度,只需更换外部StackPanel
by a Grid
如果你想要StackPanel
要至少填充整个,您可以绑定MinWidth
给它的父级ActualWidth
:
<StackPanel HorizontalAlignment="Stretch"
Name="parent"
Orientation="Horizontal"
Background="BlueViolet"
Height="70">
<StackPanel HorizontalAlignment="Stretch"
MinWidth="{Binding Path=ActualWidth, ElementName=parent}"
Orientation="Horizontal"
Background="Chartreuse" >
</StackPanel>
</StackPanel>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)