2013-01-11 32 views
0

我实现它只是包含一个标签和一个文本框输入多行文本的自定义控制:XAML TextBox:如何保持高度固定,即使verticalalignment拉伸?

<DockPanel Name="MyStackPanel" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" LastChildFill="True" > 
    <Label DockPanel.Dock="Top" Content="{Binding MyTitle}" Style="{StaticResource PropertyNameLabelStyle}" /> 
    <TextBox DockPanel.Dock="Bottom" Text="{Binding Path=MyText, Mode=TwoWay}" IsReadOnly="{Binding MyIsReadOnly}" HorizontalAlignment="Stretch" AcceptsReturn="True" Margin="5,5,5,5" VerticalScrollBarVisibility="Visible" IsUndoEnabled="True" /> 
</DockPanel> 

这是很重要的TextBox填满所有的空间其父所提供的,但不是更多 - 这是运作良好与上面的代码。但是,如果用户输入的文字多于显示的TextBox提供的TextBox而是变得更大(更高),那么只需启用垂直ScrollBar,这正是我 - 我猜想其他所有程序员最想要的。

谢谢你的帮助!

+0

没问题,WPF还是SL? –

+0

WPF!有差异吗? – user1781720

回答

0

我很新的XAML,但我想你可能想试试这个:

我设置VerticalAlignment对TextBox本身:

<TextBox Text="ABC" MinWidth="200" VerticalAlignment="Center"> 
</TextBox> 

它为我工作。