2011-09-22 79 views
2

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

我使用.NET框架4(Visual Studio 2010),我用C#编写。

由于提前, 盖伊

回答

1

那么它似乎我会回答我的问题 - 我所要做的就是把与其他类的属性之间的这两条线:

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

和环绕期望的代码段与此在开始时:

LockWindow(this.Handle); 

,这在端部:

LockWindow(IntPtr.Zero);