![]() |
#20 |
Moderator
|
Я про это писал:
Цитата:
Можно подумать про virtual listview - в котором данные будут подгружаться по мере их отображения - но это уже много программирования.
Цитата:
Изначально опубликовано mega_guest: Если вспомнить WinAPI, то ListView поддерживает так называем виртуальный список, вывод на экран при этом будет очень быстр (т.к. отображаются только те данные которые видны), но у клиента в памяти или на диске в файле все равно будет полный набор данных.
Virtual listView - это нечто другое. ListView владеет некоторой областью памяти, в которой хранит данные для отображения. И суть в том, чтобы заполнять эту память не сразу всеми данными, которые когда-либо могут отобразиться, а постепенно - по мере отображения нужных элементов, как правило в onPaint(). При этом мы избегаем загрузки элементов, котоорые могут быть не отображены. Как ты правильно сказал, WinApi поддерживает listView, но это поддержку нужно реализовывать ручками ![]() По идее, это даже не фича отдельного контрола, а один из элементов концепции "Data-Model", когда мы отделяем данные от их представления. Аналогичным образом реализуются Virtual TreeView, Virtual Grid и т.д. |
|