У меня есть пользовательский элемент управления Silverlight, содержащий сетку данных. Сетка данных связана с коллекцией ObservableCollection. Пользовательский элемент управления отображается во всплывающем окне, которое я показываю в ответ на какое-то событие в другом элементе управления
В коллекции около 80 объектов, и я установил фиксированную высоту 400 на сетке данных, поэтому одновременно можно отобразить только около 20 элементов, а вертикальная полоса прокрутки должна отображаться с размером большого пальца. занимая около 1/4 высоты контроля.
Однако, на самом деле происходит, что полоса прокрутки занимает почти всю высоту управления; возможно 95% этого. Сетка данных отображает первые 20 элементов. Когда я нажимаю на стрелку прокрутки вниз, полоса прокрутки немного опускается, чтобы занять нижнюю 95% области прокрутки, а на сетке данных отображаются последние 20 элементов.
Становится страннее. Если я перемещаюсь по элементам в сетке и прокручиваю вниз, используя колесо мыши , то элементы прокручиваются правильно, и я могу просмотреть весь список, хотя полоса прокрутки остается того же размера.
И , затем , если я закрою всплывающее окно и снова открою его, полоса прокрутки теперь появится с правильной высотой, и она будет работать правильно.
Наконец, если я просто показываю элемент управления прямо на странице, а не во всплывающем окне, он работает нормально.
Что тут происходит?! Кто-нибудь еще сталкивался с этой проблемой? Помогите! * * 1023
Обновление : Кажется, проблема в том, что я показываю всплывающее окно. По разным причинам мне пришлось реализовать всплывающее окно несколько хитрым способом, и именно это вызывает проблемы.