WPF TextBox宽度如何自动调整。
<StackPanel Orientation="Horizontal" Width="370">
<TextBlock Text="*公民身份号码" />
<TextBox ></TextBox>
</StackPanel>
请问如何操作可以使TextBox能根据StackPanel和TextBlock的宽度自动调整其宽度呢?
例如当 TextBlock宽度为100时,TextBox的长度极为370 - 100 = 270。
或者说怎么设置可以使TextBox不超出其父控件。
[解决办法]
<StackPanel Orientation="Vertical" Width="370">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"></ColumnDefinition>
<ColumnDefinition Width="*"></ColumnDefinition>
</Grid.ColumnDefinitions>
<TextBlock Text="*公民身份号码" Grid.Column="0" Width="100" />
<TextBox Grid.Column="1" ></TextBox>
</Grid>
</StackPanel>
这样就可以了
[解决办法]
那你为什么要用StackPanel呢?控件有那么多,你要选一个适合的,比如你的这种情况,选DockPanel就很合适啊。
<DockPanel Width="370" > <TextBlock DockPanel.Dock="Left" Text="*公民身份号码" /> <TextBox DockPanel.Dock="Right" /></DockPanel>