为什么文本框在StackPanel中不能自动拉伸填充空间?这是故意的吗?在Grid控件中,文本框可以按预期自动拉伸。
为什么文本框在StackPanel中不能自动拉伸填充空间?这是故意的吗?在Grid控件中,文本框可以按预期自动拉伸。
是的,这是设计如此。 StackPanel
会为 TextBox
请求的空间分配空间。如果您没有在 TextBox
上设置宽度,则它只需要足够的宽度来适应其文本。
StackPanel 将根据其 Orientation 属性值拉伸元素。那么
默认情况下,StackPanel 中包含的内容的 HorizontalAlignment 和 VerticalAlignment 都是 stretch。
当元素的 Height 和 Width 属性被显式设置时,在布局期间,这些测量值具有更高的优先级,并且将取消将 HorizontalAlignment 设置为 Stretch 的典型效果。
我需要将项目等大小地垂直堆叠。
我使用了UniformGrid,并将Columns属性设置为1。(使用TextBox测试,它会像您想要的那样拉伸)