wpf文本框光标滚动

时间:2010-12-10 19:36:06

标签: wpf textbox scroll

我需要设置什么属性才能使WPF文本框中光标附近的文本始终可见。我必须设置一行文本框的宽度,一旦我在宽度之外键入我看不到我正在键入的内容我可以设置ScrollViewer.CanContentScroll = True但这会使高度增加,这比前者更好但我更喜欢光标附近的文本像常见的WinForms文本框行为一样可见。

有什么想法吗?我认为一个WPF大师或者甚至新手可以比我实验/谷歌更快地回答这个问题

提前致谢

2 个答案:

答案 0 :(得分:1)

您描述的行为应该是默认情况下的操作方式。为了测试这个,我刚刚创建了一个TextBox ...

<TextBox Width="50" Height="22" ></TextBox>

...开始打字,我输入的最新字符是光标所在的位置,因此可见。

也许你有一种风格或应用的东西否定了这种默认行为。

答案 1 :(得分:0)

亚伦·麦克弗(Aaron McIver)的答案指向样式,而OP则认为其全局样式设置TextWrapping="WrapWithOverflow"是他们的问题。我有一个类似的问题,但是有不同的解决方案。就我而言,问题是ScrollViewer的样式刚刚

<ScrollContentPresenter Margin="1" />

ScrollContentPresenter。默认模板具有

<ScrollContentPresenter x:Name="PART_ScrollContentPresenter" CanContentScroll="{TemplateBinding CanContentScroll}" CanHorizontallyScroll="False" CanVerticallyScroll="False" ContentTemplate="{TemplateBinding ContentTemplate}" Content="{TemplateBinding Content}" Grid.Column="0" Margin="{TemplateBinding Padding}" Grid.Row="0" />

在缺少的属性中,最重要的属性是CanContentScroll