我想创建一个足够大的WPF文本框来显示3行文本。到目前为止,我有这段代码:
System.Windows.Controls.TextBox myTextbox = new TextBox()
{
AcceptsReturn = true,
MinLines = 3,
MaxLines = 3,
TextWrapping = TextWrapping.Wrap,
FontFamily = new FontFamily("Microsoft Sans Serif"),
FontSize = 11,
};
然而,当布置myTextBox
时,无法保证它有足够的高度来显示3行文字。理想情况下,我想将FontSize
指定为“myTextBox
有足够的空间容纳3行文字,而不是更小”。有没有办法做到这一点?
答案 0 :(得分:1)
以下是基于我上述评论的插图。
<Border VerticalAlignment="Top" Height="Auto">
<TextBox FontSize="11" MinLines="3" MaxLines="3" AcceptsReturn="True" FontFamily="Microsoft Sans Serif" VerticalAlignment="Top"/>
</Border>
给了我三行。
<Border VerticalAlignment="Top" Height="11">
<TextBox FontSize="11" MinLines="3" MaxLines="3" AcceptsReturn="True" FontFamily="Microsoft Sans Serif" VerticalAlignment="Top"/>
</Border>
只给我一个。边框限制了TextBox的高度。
答案 1 :(得分:0)
好吧,我最后只是将TextBox
放入ScrollViewer
,就像这样:
System.Windows.Controls.ScrollViewer myScrollViewer =
new ScrollViewer(){Content = myTextbox};
// Now place the ScrollViewer where the TextBox was before.