我有一个TextBox
控制StackPanel
的Orientation
设置为Horizontal
,但无法让文本框填充剩余的StackPanel空间。WPF TextBox将不会填写StackPanel
XAML:
<Window x:Class="WpfApplication1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Height="180" Width="324">
<StackPanel Background="Orange" Orientation="Horizontal" >
<TextBlock Text="a label" Margin="5" VerticalAlignment="Center"/>
<TextBox Height="25" HorizontalAlignment="Stretch" Width="Auto"/>
</StackPanel>
</Window>
这是什么样子:
为什么那个文本框不填充StackPanel的?
我知道我可以通过使用控制Grid
控制更多的控制,我只是对布局感到困惑。
只是为了澄清 - LastChildFill默认设置为“True”并将HorizontalAlignment设置为伸展TextBox没有任何效果。 :-) – Goblin 2010-09-17 17:45:21
@Goblin:是的......我复制并粘贴了OP的代码,但忘了删除'HorizontalAlignment'。 :) – 2010-09-17 18:06:32
严重的是,这是由设计?似乎很奇怪,因为控制本身显然跨越整个宽度。您是否说内容区域不一定与可见区域相同? – 2010-09-17 18:34:08