Как включить виртуализацию пользовательского интерфейса в стандартном WPF ListView

Я использую .NET 4.5 / VS2012, и у меня ListView выглядит примерно так:

            -  logs                       

Но все же производительность не улучшается вообще. Я нашел пример с помощью ListBox, но как виртуализировать ListView? Я немного потрудился. Я слышал, что с группировкой виртуализация отключена в предыдущей версии WPF, но с .NET 4.5 WPF обладает свойством IsVirtualizingWhenGrouping , я уже установил его в True .

Обновление : виновник является обычным стилем, после его удаления список выглядит гладко, как масло

Эта статья поможет вам многое. Также можно увидеть ..

  • Виртуализация пользовательского интерфейса ListView
  • WPF Data virtualizing ListView

«Виртуализация пользовательского интерфейса хранит только видимые элементы в памяти, но в сценарии привязки данных хранит всю структуру данных в памяти . Напротив, виртуализация данных хранит только элементы данных, которые видны на экране в памяти».

«По умолчанию виртуализация пользовательского интерфейса включена для элементов управления ListView и ListBox, когда их элементы списка привязаны к данным».

Для получения дополнительной информации просмотрите исходный источник MSDN.

  • Проблема с разрешением экрана в WPF?
  • Как динамически создавать столбцы в DataGrid WPF?
  • WPF Image Pan, Zoom и Scroll со слоями на canvasе
  • WPF DataGrid - кнопка в столбце, получающая строку, из которой она появилась в обработчике событий Click
  • Как прокручивать в нижней части ScrollViewer автоматически с помощью Xaml и привязки?
  • Как добавить поведение Blend в стильном сеттере
  • Image UriSource и привязка данных
  • Почему я не могу создать стиль DataGridTextColumn?
  • WPF: простая привязка данных TextBox
  • Программа не содержит статический «Основной» метод, подходящий для точки входа
  • Связывание со статическим classом
  • Давайте будем гением компьютера.