Обнаружение прокрутки до конца списка
У меня большой список предметов, поэтому я должен запросить соответствующую страницу с сервера. Как поймать событие, когда пользователь прокручивает до конца списка, чтобы я мог запросить другую страницу?
4 ответа
Точные решения, которые вы ищете: http://danielvaughan.orpius.com/post/Scroll-Based-Data-Loading-in-Windows-Phone-7.aspx
Вы думаете о виртуализации данных. Шон Остер написал действительно хорошее объяснение этому здесь. Подводя итог, это не ListBox
который управляет вашими данными, но ваш пользовательский IList
реализация, которая может извлекать новые элементы каждый раз, когда требуется новый блок данных.
Вы можете просто проверить вертикальное смещение, если оно больше высоты прокрутки, пользователь находится внизу списка, при необходимости запустите запрос на другую страницу.
Лучший подход заключается в использовании LongListSelector
, Он доступен из набора инструментов Windows Phone для Windows Phone 7 или встроен в Windows Phone 8. Он работает лучше, чем встроенный ListBox
и имеет больше возможностей.
Сообщение из официального блога Windows Phone Developer (с октября 2012 г.) содержит все подробности и рассказывает, как настроить бесконечную прокрутку.