2011-07-14 91 views
1

我想将文本追加到RichTextBox控件,但我不想干扰用户的滚动位置或文本选择。迄今为止我所能做的最好的事情是保存SelectionStartSelectionLength属性,并在追加我的文本后恢复它们。这很接近,但光标最终位于控件的顶部,而不是追加之前的位置。这可能吗?防止RichTextBox自动滚动

回答

2

好吧,这里正是你所需要的:Richtextbox :- controlling scrolling when appending text

在那里你会发现如何在追加文本时锁定滚动条。

查找CoolColin答案:

诀窍是使用Windows EM_HIDESELECTION调用(这是对#hideselection不同),并且还暂时删除的焦点。

您可以使用RichTextBox控件的SelectionStart属性来“获取或设置在文本框中选择的文本的起点”。与您已存储的值进行比较。

看一看RichTextBox Class。最后你需要使用TextBoxBase.ScrollToCaret方法。

+0

这个答案是大联盟,让我告诉你。 –