我花了两个小时研究如何避免WPF TextBox控件在输入长文本时变大,但我没有成功,即使我读了一些关于此类问题的答案,例如下面这些:
但是它对于我没有起作用。
我还尝试向网格添加以下属性:
但是这也行不通。
当用户拉伸窗口时,我需要控件增长,但插入长文本时不需要增长。
你有什么不同的解决方法来解决这个问题吗?
更新!
我注意到一些非常奇怪的事情:如果我手动拉伸窗口,当插入长文本时文本框停止增长。这很好。但是我需要在运行程序时不必每次都拉伸窗口才能实现此目的。
stopping-wpf-textbox-from-growing-with-text
wpf-allow-textbox-to-be-resized-but-not-to-grow-on-user-input
wpf-how-to-stop-textbox-from-autosizing
我的代码如下:
<Grid>
<TextBox Margin="6,6,8,28" Name="textBox1" AcceptsTab="True" TextWrapping="Wrap" VerticalScrollBarVisibility="Visible" AcceptsReturn="True"/>
<CheckBox Content="Case sensitive" HorizontalAlignment="Left" Margin="7,0,0,2" Name="checkBox1" Height="16" VerticalAlignment="Bottom" />
</Grid>
我尝试过的一件事是:
MaxWidth={Binding ElementName=MyGrid, Path=ActualWidth}
但是它对于我没有起作用。
我还尝试向网格添加以下属性:
ScrollViewer.HorizontalScrollBarVisibility="Disabled"
或者
<Border x:Name="b" Grid.Column="1"/>
<TextBox Width="{Binding ActualWidth, ElementName=b}" ....... />
但是这也行不通。
当用户拉伸窗口时,我需要控件增长,但插入长文本时不需要增长。
你有什么不同的解决方法来解决这个问题吗?
更新!
我注意到一些非常奇怪的事情:如果我手动拉伸窗口,当插入长文本时文本框停止增长。这很好。但是我需要在运行程序时不必每次都拉伸窗口才能实现此目的。