Export (0) Print
Expand All
Expand Minimize

VirtualizationMode Enumeration

Specifies the method the VirtualizingStackPanel uses to manage virtualizing its child items.

Namespace:  System.Windows.Controls
Assembly:  PresentationFramework (in PresentationFramework.dll)

public enum class VirtualizationMode
<object property="enumerationMemberName" .../>

Member nameDescription
StandardCreate and discard the item containers.
RecyclingReuse the item containers.

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 many items, the process of creating and discarding item containers can negatively affect performance. When VirtualizationMode 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 list describes cases when the VirtualizingStackPanel cannot recycle item containers:

  • The ItemsControl contains item containers of different types. For example, a Menu might have items that use both MenuItem and Separator objects as the item containers.

  • You explicitly create the item containers for the ItemsControl.

The following example creates a ListBox and sets the VirtualizationMode attached property to Recycling.


<StackPanel>

  <StackPanel.Resources>
    <src:LotsOfItems x:Key="data"/>
  </StackPanel.Resources>

  <ListBox Height="150" ItemsSource="{StaticResource data}" 
             VirtualizingStackPanel.VirtualizationMode="Recycling" />

</StackPanel>


The following example shows the data used in the previous example.

No code example is currently available or this language may not be supported.

.NET Framework

Supported in: 4, 3.5 SP1, 3.0 SP2

.NET Framework Client Profile

Supported in: 4, 3.5 SP1

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.

Community Additions

ADD
Show:
© 2014 Microsoft