【问题标题】:WPF TextBox automatically scrolls cursor into view when focusedWPF TextBox 聚焦时自动将光标滚动到视图中
【发布时间】:2009-09-15 09:52:48
【问题描述】:

我正在制作一个简单的日志查看器,它由一个显示文件的大 TextBox 和一个通过设置 Text 属性不时更新 TextBoxDispatchTimer 组成。

只要将焦点设置为TextBox,它就会自动滚动到光标所在的位置,即使我明确地在其上发出ScrollToEnd()。 (在这种情况下,UI 会显示滚动条从末端“跳”回光标位置)。

如何使TextBox 保持其当前滚动位置并忽略光标位置?

【问题讨论】:

  • 一个问题。为什么不使用 RichTextBox?
  • 内容很多,恐怕RichTextBox会太慢太复杂。

标签: c# wpf textbox wpf-controls scroll


【解决方案1】:

对于滚动,最好使用ScrollViewer

 <ScrollViewer HorizontalScrollBarVisibility="Auto" Height="80">
   <TextBlock Name="debugLog" />
 </ScrollViewer>

假设日志不可编辑。

【讨论】:

  • 但是,我将如何滚动到特定行? (它确实不可编辑)。
  • 我可以用ScrollViewer滚动到特定的行吗?请编辑您的答案,以便我能够接受。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-05-12
  • 2020-05-06
  • 1970-01-01
  • 2012-11-05
  • 1970-01-01
  • 1970-01-01
  • 2011-05-23
相关资源
最近更新 更多