Ответ 1
Я предполагаю, что вы можете добавить отдельные элементы управления прокруткой и синхронизировать их события Scroll
со смещением, на котором рисуется изображение в PictureBox
, но это похоже на фактическую работу. Там лучший способ.
-
Добавьте элемент
Panel
в свою форму и установите для свойстваAutoScroll
значение "True" .. приведет к тому, что элемент управления автоматически отобразит полосы прокрутки, когда он содержит контент, который находится за пределами его видимых в настоящее время границ..NET Framework позаботится обо всем для вас под обложками, без необходимости писать одну строку кода. -
Перетащите элемент управления
PictureBox
внутри элемента управленияPanel
, который вы только что добавили. Элемент управленияPanel
затем обнаружит, что один из его дочерних элементов управления больше, чем его видимую область и показывать полосы прокрутки, благодаря свойствуAutoScroll
. Когда пользователь перемещает полосы прокрутки, часть изображения в видимомPictureBox
будет автоматически изменена. Магия.
(Причина, по которой вы должны использовать элемент управления Panel
в качестве контейнера, состоит в том, что PictureBox
не наследуется непосредственно из базового класса ScrollableControl
, который является тем, что предоставляет свойство AutoScroll
.)