Я создал UserControl, который содержит кучу других элементов управления, которые также размещены во внешней области видимой части моего элемента управления, чтобы вызвать появление вертикальной полосы прокрутки, как ожидается, и требуемое поведение.
Все работает так, как должно, пока размер, количество и расположение элементов управления не превышают некоторого значения. Я говорю некоторые , потому что я не могу определить, какое значение я превышаю, и из-за этого я плохо контролирую свою работу.
Количество элементов управления в моем UserControl может варьироваться от нескольких до нескольких тысяч, в зависимости от обстоятельств. Элементы управления одинакового размера отображаются в строках / столбцах. Количество строк и столбцов, которые пользователь видит в видимой части UserControl, зависит от размера элементов управления внутри. Насколько я знаю, у меня должна быть возможность работать с такими значениями местоположения, как максимальное значение int . Но кажется, что я делаю что-то не так, потому что пока тесты работают не так, как надо.
Хотя значение элемента управления Location.Y в нижней части моего UserControl, например, 49150 , прокрутка элемента управления не приближает меня к этому значению VScrollBar. максимум независимо от того, сколько элементов управления я установил и как далеко их Y расположение никогда не станет больше, чем 32896 .
Когда я изменяю размер моего UserControl или размер элементов управления внутри, так что Location.Y последнего элемента управления не слишком далеко, все отлично работает.
Можно ли как-то исправить VScrollBar или сделать что-нибудь еще, чтобы заставить мою контрольную работу работать именно так, как мне нужно, или что-нибудь еще, что могло вызвать такую проблему?
MTH