Как остановить прокрутку панели Winforms с помощью Переопределить класс? - PullRequest
0 голосов
/ 24 июня 2018

Я имею дело со «старой» проблемой, позиция прокрутки с панели сбрасывается при возврате в приложение после его выхода. У меня есть DataGridView на панели, для панели AutoScroll = True, поэтому, когда DataGridView шире, чем панель, появится горизонтальная полоса прокрутки. Когда пользователь прокручивает Panel до определенной позиции прокрутки и покидает приложение, при возврате в приложение позиция полосы прокрутки сбрасывается в начало. Я нашел несколько постов, описывающих это поведение, и одно из решений, о которых говорят люди: «В ScrollableControl теперь есть переопределяемый метод ScrollToControl. Замените вызов реализации базового класса, чтобы вернуть DisplayRectangle.Location и проблема решена. Смотри: http://seewinapp.blogspot.com/2005/09/is-your-autoscroll-too-auto.html

Не могу найти правильное решение, как я могу переопределить базовый класс? Можно ли переопределить базовый класс, если панель не размещена программно?

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

Пожалуйста, укажите мне правильное направление, заранее спасибо!

...