How to get controls in WPF to fill available space?
如果你没有指定它的高度,一些WPF控件(比如
还有一些,比如我现在需要使用的那些,(多线)
如果你将这些人放在一个
我认为这真的是一个基本的布局要求,但我无法弄清楚如何让它们填充他们可以的空间(将它们放在
如果您必须使用
你可以将 还有一些属性可以设置为强制控件填充其可用空间,否则不会这样做。例如,您可以说:
...强制控件的内容水平拉伸。或者你可以说:
...强制控件本身水平拉伸以填充其父级。
从
A
您可以通过派生 有关简单示例,请参阅此文章。 嗯,我发布后就知道了,这是最令人尴尬的方式。 :) 看起来StackPanel的每个成员都会填充其最小请求大小。 在DockPanel中,我以错误的顺序停靠了东西。如果TextBox或ListBox是唯一没有对齐的停靠项,或者它们是最后添加的,它们将按需填充剩余空间。 我希望看到一种更优雅的方法来处理这个问题,但它会做到。 使用Horizo??ntalAlignment和VerticalAlignment布局属性。它们控制元素在可用空间多于元素所需的空间时如何使用其父元素内的空间。 例如,StackPanel的宽度将与它包含的最宽元素一样宽。因此,所有较窄的元素都有一些过剩的空间。对齐属性控制子元素对额外空间的作用。 两个属性的默认值是Stretch,因此子元素被拉伸以填充所有可用空间。其他选项包括Horizo??ntalAlignment的Left,Center和Right以及VerticalAlignment的Top,Center和Bottom。 |