VirtualizingStackPanel.VirtualizationMode Attached Property
Gets or sets how a panel in an ItemsControl virtualizes its child items.
Assembly: PresentationFramework (in PresentationFramework.dll)
XMLNS for XAML: http://schemas.microsoft.com/winfx/2006/xaml/presentation, http://schemas.microsoft.com/netfx/2007/xaml/presentation
<object VirtualizingStackPanel.VirtualizationMode="VirtualizationMode" .../>
By default, a VirtualizingStackPanel creates an item container for each visible item and discards it when it is no longer needed (such as when the item is scrolled out of view). When an ItemsControl contains a lot of items, the process of creating and discarding item containers can negatively affect performance. When is set to Recycling, the VirtualizingStackPanel reuses item containers instead of creating a new one each time.
When VirtualizingStackPanel cannot recycle item containers, it uses the standard mode of virtualization, which is to create and discard item containers for each item. The following lists describes cases when the VirtualizingStackPanel cannot recycle item containers:
When a VirtualizingStackPanel is recycling item containers, you may need to save state information that is associated with a container instead of with the data item itself. For example, if an item is contained by an Expander control, the IsExpanded state is bound to the item container, and not to the data item itself. When the Expander is reused for a new item, the current value of IsExpanded is used for the new item. In addition, the old item does not retain its IsExpanded value.
The following example shows the data used in the previous example.
Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.