У меня есть сценарий сетки с> 500 000 000 строк Я хотел бы отобразить в ListView.Является ли WinForms ListView в VirtualMode ограниченным до 100 000 000 строк?
Если я искусственно ограничить мой ListView для отображения 100000000:
_listView.VirtualListSize = _data.Count;
if (_listView.VirtualListSize > 100000000)
_listView.VirtualListSize = 100000000;
Все отлично работает (в VirtualMode естественно). Когда я изменить свой код на:
_listView.VirtualListSize = _data.Count;
if (_listView.VirtualListSize > 100000001)
_listView.VirtualListSize = 100000001;
ListView отобразить пустую сетку ... Является ли это ошибка Microsoft? Откуда это? Это ограничение Win32 ListView? Самое главное, почему это не документировано?
Если вы показываете пользователю 50M записей, последний вопрос, который вы должны задать, - «как я могу отображать 100M?». GUI нуждается в повторном дизайне, stat! – Juliet
Это в VirtualMode. Пользователь имеет множество методов для навигации по данным, которые не такие глупые, как прокрутка по одному. Почему VirtualMode должен ограничиваться чем-то меньшим, чем 64 бит? Кроме того, почему это не прокомментировано? И кто решает, что 100 000 000 в порядке, но 100 000 001 нет? – damageboy
@Juliet Посмотрите на [Picasa] (http://picasa.google.com/). Он может отображать несколько миллионов элементов (у меня всего несколько миллионов изображений), и он отлично подходит для пользователя. Реакция коленного рефлекса * больше, чем ** x ** предметов слишком много * просто недействительна. –