Есть ли веская причина, по которой свойство Maximum в ScrollBar может быть достигнуто только программно? - PullRequest
5 голосов
/ 02 февраля 2011

Интуитивно понятно, что свойства Minimum и Maximum ScrollBar могут использоваться для управления диапазоном, доступным для пользователя, но MaximumВ статье MSDN говорится:

Вы можете рассмотреть динамическое изменение свойства Maximum, чтобы оно соответствовало размеру родительского элемента полосы прокрутки пропорционально размеру пикселя или количеству строк или строк.

Максимальное значение может быть достигнуто только программно.Значение полосы прокрутки не может достичь своего максимального значения в результате взаимодействия с пользователем во время выполнения.Максимальное значение, которое может быть достигнуто при взаимодействии с пользователем, равно 1 плюс значение свойства Maximum минус значение свойства LargeChange.При необходимости вы можете установить для свойства Maximum размер объекта -1, чтобы учесть срок 1.

Можете ли вы объяснить, почему это так?

1 Ответ

4 голосов
/ 02 февраля 2011

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

Часто я видел приложения, которые позволяют прокручивать содержимое до тех пор, пока конец содержимого не пройдет верхнюю часть области прокрутки.(Оставляя видимой пустую область.) Но интуитивно вы ожидаете, что полоса прокрутки остановит вас, как только вы достигнете нижней части области прокрутки.Надеюсь, это имело смысл.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...