Динамически загружать элементы (изображения) в виде списка на пользовательские прокрутки в C # - PullRequest
5 голосов
/ 26 декабря 2011

Я использую элемент управления представлением списка, который прикреплен к списку изображений для отображения миниатюр изображений в представлении списка в форме. Я добавляю изображения из папки в список изображений с помощью цикла и следующих действий.код ImageList1.Images.Add(Image.FromFile("c:\\windows\\img.bmp"));

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

Пожалуйста, помогите мне в этом.

Ответы [ 2 ]

2 голосов
/ 26 декабря 2011

Лично у меня был очень хороший опыт использования ImageListView , как с точки зрения технологии (производительность), так и с точки зрения ответа автора (качество и скорость).

Я использую его как замену ListView всякий раз, когда мне нужны списки визуальных изображений.

0 голосов
/ 26 декабря 2011

Мой очень наивный подход заключается в расширении класса ImageList, добавлении коллекции местоположений файлов и переопределении средства получения изображений для загрузки файла при первом запросе (т. Е. При отсутствии кэша).

В противном случаеЯ ожидаю, что вы должны следить за обработкой событий ListView для прокрутки и / или отображения элементов списка.(Я предполагаю, что они существуют, с пользовательским интерфейсом некоторое время не обращались)

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