Можем ли мы сохранить полосу прокрутки формы, но запретить автоматическую прокрутку формы до целевого элемента управления? - PullRequest
0 голосов
/ 02 апреля 2019

Я хочу предотвратить автоматическую прокрутку формы, когда фокус находится внизу элемента управления, но при этом оставить полосы прокрутки, если они появятся.

Поскольку у некоторых пользователей разрешение экрана несколько ниже, чем у формы,полосы прокрутки иногда появляются.Это создало проблему с некоторым DataGridView.Поскольку опция AutoScroll включена, при щелчке по DataGridView выполняется многократный выбор, поскольку мы щелкаем и перемещаемся.

Когда я отключаю свойство AutoScroll, полосы прокрутки исчезают.Поэтому пользователь не может видеть все.

Есть ли способ отключить AutoScroll, но при этом сохранить полосу прокрутки?

1 Ответ

2 голосов
/ 03 апреля 2019

Если я правильно понимаю вашу ситуацию, вы, по сути, хотите, чтобы пользователь имел возможность прокручивать форму вручную , но не допускал автоматической прокрутки формы до элемента управления, на который фокусировался.

Введите этот код в вашей форме:

Protected Overrides Function ScrollToControl(activeControl As Control) As Point
    'Return MyBase.ScrollToControl(activeControl)   ' <-- Keep this line commented.
End Function

Результат:

Result

...