Как включить виртуализацию пользовательского интерфейса в стандартном WPF ListView
Я использую .NET 4.5 / VS2012, и у меня ListView выглядит примерно так:
- logs
Но все же производительность не улучшается вообще. Я нашел пример с помощью ListBox, но как виртуализировать ListView? Я немного потрудился. Я слышал, что с группировкой виртуализация отключена в предыдущей версии WPF, но с .NET 4.5 WPF обладает свойством IsVirtualizingWhenGrouping
, я уже установил его в True
.
Обновление : виновник является обычным стилем, после его удаления список выглядит гладко, как масло
- Как вы полностью удаляете границу кнопки в wpf?
- Как заставить приложение WPF работать в режиме администратора
- Как подавить ошибки скрипта при использовании элемента управления WPF WebBrowser?
- Что такого особенного в Generic.xaml?
- Хороший эквивалент NumericUpDown в WPF?
- Как получить TreeViewItem из элемента HierarchicalDataTemplate?
- WPF: отобразить значение bool как «Да» / «Нет»
- WPF StringFormat = {0: C}, показывающий как доллары
- Изображение кнопки мыши WPF
- Где Application.DoEvents () в WPF?
- Использование диспетчера C #
- Разница между видимостью.Collapsed и Visibility.Hidden
- Как сохранить состояние управления в элементах табуляции в TabControl
Эта статья поможет вам многое. Также можно увидеть ..
- Виртуализация пользовательского интерфейса ListView
- WPF Data virtualizing ListView
«Виртуализация пользовательского интерфейса хранит только видимые элементы в памяти, но в сценарии привязки данных хранит всю структуру данных в памяти . Напротив, виртуализация данных хранит только элементы данных, которые видны на экране в памяти».
«По умолчанию виртуализация пользовательского интерфейса включена для элементов управления ListView и ListBox, когда их элементы списка привязаны к данным».
Для получения дополнительной информации просмотрите исходный источник MSDN.