VirtualizationMode Énumération
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Spécifie la méthode utilisée par l'VirtualizingStackPanel pour gérer la virtualisation de ses éléments enfants.
public enum class VirtualizationMode
public enum VirtualizationMode
type VirtualizationMode =
Public Enum VirtualizationMode
- Héritage
Champs
| Nom | Valeur | Description |
|---|---|---|
| Standard | 0 | Créez et ignorez les conteneurs d’éléments. |
| Recycling | 1 | Réutilisez les conteneurs d’éléments. |
Exemples
L’exemple suivant crée une ListBox propriété jointe et définit la VirtualizationMode propriété jointe sur Recyclage.
<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.
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 conteneur d’éléments est créé pour chaque élément visible et l’ignore lorsqu’il n’est plus nécessaire (par exemple, lorsque l’élément fait défiler l’affichage). Lorsqu’un ItemsControl élément contient de nombreux éléments, le processus de création et d’abandon des conteneurs d’éléments peut affecter négativement les performances. Lorsqu’il VirtualizationMode est défini sur Recyclage, le VirtualizingStackPanel réutilise les conteneurs d’éléments au lieu de créer un conteneur à chaque fois.
Lorsqu’il VirtualizingStackPanel ne peut pas recycler les conteneurs d’éléments, il utilise le mode standard de virtualisation, qui consiste à créer et à ignorer des conteneurs d’éléments pour chaque élément. La liste suivante décrit les cas où les conteneurs d’éléments VirtualizingStackPanel ne peuvent pas recycler :
Contient ItemsControl des conteneurs d’éléments de différents types. Par exemple, un Menu élément peut avoir des éléments qui utilisent à la fois MenuItem et Separator des objets comme conteneurs d’éléments.
Vous créez explicitement les conteneurs d’éléments pour le ItemsControl.