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 que le VirtualizingStackPanel utilise 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
Recycling | 1 | Réutiliser les conteneurs d’éléments. |
Standard | 0 | Créer et supprimer les conteneurs d’éléments. |
Exemples
L’exemple suivant crée un ListBox 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 crée un conteneur d’éléments pour chaque élément visible et l’ignore lorsqu’il n’est plus nécessaire (par exemple, lorsque l’élément sort de l’affichage). Lorsqu’un contient un grand nombre d’éléments, le processus de création et d’abandon des conteneurs d’éléments ItemsControl peut affecter négativement les performances. Lorsque VirtualizationMode est défini sur Recyclage, le VirtualizingStackPanel réutilise les conteneurs d’éléments au lieu d’en créer un à chaque fois.
Lorsque 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 des ItemsControl conteneurs d’éléments de différents types. Par exemple, un Menu peut avoir des éléments qui utilisent à la fois des MenuItem objets et Separator comme conteneurs d’éléments.
Vous créez explicitement les conteneurs d’éléments pour .ItemsControl