VirtualizationMode Énumération

Définition

Spécifie la méthode que le VirtualizingStackPanel utilise pour gérer la virtualisation de ses éléments enfants.Specifies the method the VirtualizingStackPanel uses to manage virtualizing its child items.

public enum class VirtualizationMode
public enum VirtualizationMode
type VirtualizationMode = 
Public Enum VirtualizationMode
Héritage
VirtualizationMode

Champs

Recycling 1

Réutiliser les conteneurs d’éléments.Reuse the item containers.

Standard 0

Créer et supprimer les conteneurs d’éléments.Create and discard the item containers.

Exemples

L’exemple suivant crée un ListBox et définit la VirtualizationMode propriété jointe à recycler.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>

L’exemple suivant montre les données utilisées dans l’exemple précédent.The following example shows the data used in the previous example.

public class LotsOfItems : ObservableCollection<String>
{
    public LotsOfItems()
    {
        for (int i = 0; i < 1000; ++i)
        {
            Add("item " + i.ToString());
        }
    }
}
Public Class LotsOfItems
    Inherits ObservableCollection(Of String)
    Public Sub New()
        For i As Integer = 0 To 999
            Add("item " & i.ToString())
        Next
    End Sub
End Class

Remarques

Par défaut, un VirtualizingStackPanel crée un conteneur d’élément pour chaque élément visible et l’ignore lorsqu’il n’est plus nécessaire (par exemple, lorsque l’élément défile hors de l’affichage).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). Quand un ItemsControl contient un grand nombre d’éléments, le processus de création et d’abandon des conteneurs d’éléments peut avoir un impact négatif sur les performances.When an ItemsControl contains a many items, the process of creating and discarding item containers can negatively affect performance. Lorsque VirtualizationMode est défini sur recyclage, le VirtualizingStackPanel réutilise les conteneurs d’éléments au lieu d’en créer un nouveau à chaque fois.When VirtualizationMode is set to Recycling, the VirtualizingStackPanel reuses item containers instead of creating a new one each time.

Quand VirtualizingStackPanel ne peut pas recycler des conteneurs d’éléments, il utilise le mode standard de virtualisation, qui consiste à créer et à supprimer des conteneurs d’éléments pour chaque élément.When VirtualizingStackPanel cannot recycle item containers, it uses the standard mode of virtualization, which is to create and discard item containers for each item. La liste suivante décrit les cas où le VirtualizingStackPanel ne peut pas recycler des conteneurs d’éléments :The following list describes cases when the VirtualizingStackPanel cannot recycle item containers:

  • ItemsControlContient des conteneurs d’éléments de types différents.The ItemsControl contains item containers of different types. Par exemple, un Menu peut avoir des éléments qui utilisent MenuItem les Separator objets et comme conteneurs d’éléments.For example, a Menu might have items that use both MenuItem and Separator objects as the item containers.

  • Vous créez explicitement les conteneurs d’éléments pour le ItemsControl .You explicitly create the item containers for the ItemsControl.

S’applique à

Voir aussi