在richTextBox(C#)中选择文本时禁用滚动

时间:2011-09-22 17:21:48

标签: text scroll highlight

我有一个包含(很多)文本的富文本框。我为它添加了一个搜索选项,当用户按下搜索按钮时,程序会将所有匹配项标记为黄色(通过在每个选择上执行selectionBackColor),然后选择第一个匹配项。 结果是程序看起来像“扫描”文本然后选择第一个匹配。 我不希望这种情况发生,所以我需要禁用自动滚动(在执行Select()时发生特定代码段)。 我在发布之前搜索了这个问题,我发现的主要主题是附加文本,这不是我的情况。 知道如何解决我的问题?

我正在使用.NET framework 4(visual studio 2010),我用C#编写。

提前致谢, 盖

1 个答案:

答案 0 :(得分:1)

似乎我会回答我自己的问题 - 我所要做的就是将这两行与其他类的属性放在一起:

[DllImport("user32.dll", EntryPoint = "LockWindowUpdate", SetLastError = true, CharSet = CharSet.Auto)]
private static extern IntPtr LockWindow(IntPtr Handle);

并在开头包含所需的代码段:

LockWindow(this.Handle);

最后:

LockWindow(IntPtr.Zero);