"Загрузить еще" в WPF
Есть сайт, с которого берутся данные и отображаются на экране. Загрузка делится на 2 этапа:
- Получить "короткие" данные со страницы (заголовок, автора, описание, ссылку, id).
- Отправить запрос на конкретный объект, получив оттуда оставшиеся данные (полное описание, комментарии и др.).
Можно привести пример с тем же SO, где на главной странице мы видим только часть вопроса, а на самой странице вопроса видим весь текст и комментарии.
На данный момент, я беру все объекты со страницы, отображаю то, что есть, а после отображения запускаю некий фоновый Task, который грузит все объекты этой страницы, отправляя порядком 40 запросов на сервер с некой задержкой. Но это ведь неправильно, ибо зачем грузить все данные со страницы, если на экране постоянно элементов 10?
Собственно вопрос: Как при прокрутке элементов в том же ListBox, отправлять запрос на сервер только для видимых объектов? Ну а при выходе за пределы видимости, отменять этот запрос (если есть).
Конечный вариант, который хотелось бы, либо нечто подобное (видели небось много раз в Web, мобилках):
