отключить прокрутку при выделении текста в richTextBox (C #) - PullRequest
2 голосов
/ 22 сентября 2011

У меня есть расширенное текстовое поле, которое содержит (много) текста.Я добавил опцию поиска для него, и когда пользователь нажимает кнопку поиска, программа помечает все совпадения желтым цветом (выполняя selectionBackColor для каждого выделения), а затем выбирает первое совпадение.В результате программа выглядит так, как будто она «сканирует» текст и затем выбирает первое совпадение.Я не хочу, чтобы это происходило, поэтому мне нужно отключить автопрокрутку (что происходит при выполнении Select ()) для определенного сегмента кода.Я искал эту проблему перед публикацией, и основные темы, которые я нашел, включали добавление текста, но это не мой случай.Есть идеи, как решить мою проблему?

Я использую .NET Framework 4 (Visual Studio 2010) и пишу на C #.

Заранее спасибо, Гай

1 Ответ

1 голос
/ 23 сентября 2011

Что ж, похоже, я отвечу на свой вопрос - все, что мне нужно было сделать, это поместить эти две строки в свойства другого класса:

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

и окружить нужный сегмент кода этимв начале:

LockWindow(this.Handle);

и это в конце:

LockWindow(IntPtr.Zero);
...