Description

In a normal WPF ItemsControl that virtualizes, such as ListBox or ListView, virtualization turns off when you turn grouping on. This sample shows how to achieve the same visual look of grouping and much of the same API while still having virtualization.

This project can be built and run using Microsoft Visual Studio 2008.

What is shown
  • A new collection view that will flatten the group collections
  • How to use some special properties to customize the containers that hold headers
  • How to provide data templates for the items and the headers
  • How to make the collection view respond to items being added

What is not shown
  • I did not implement the code to make the new collection view work with nested groups.
  • How to make the collection view respond to items being removed, replaced, or moved

If you decide to use any of the code, please be sure to read any commented notes.