【问题标题】:disable scrolling when selecting text in richTextBox (C#)在richTextBox(C#)中选择文本时禁用滚动
【发布时间】:2011-11-23 01:11:15
【问题描述】:
我有一个包含(很多)文本的富文本框。我为它添加了一个搜索选项,当用户按下搜索按钮时,程序将所有匹配项标记为黄色(通过对每个选择执行 selectionBackColor),然后选择第一个匹配项。
结果是程序看起来像是“扫描”了文本,然后选择了第一个匹配项。
我不希望这种情况发生,所以我需要为特定代码段禁用自动滚动(在执行 Select() 时发生)。
我在发布之前搜索了这个问题,我发现的主要主题涉及附加文本,这不是我的情况。
知道如何解决我的问题吗?
我正在使用 .NET 框架 4 (visual studio 2010),并使用 C# 编写。
提前致谢,
伙计
【问题讨论】:
标签:
text
scroll
highlight
【解决方案1】:
看来我会回答我自己的问题 - 我所要做的就是将这两行与其他类的属性放在一起:
[DllImport("user32.dll", EntryPoint = "LockWindowUpdate", SetLastError = true, CharSet = CharSet.Auto)]
private static extern IntPtr LockWindow(IntPtr Handle);
并在开头用 this 包围所需的代码段:
LockWindow(this.Handle);
最后是这个:
LockWindow(IntPtr.Zero);