VirtualizationMode Enumeration
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt die Methode an, die die VirtualizingStackPanel zum Verwalten der Virtualisierung der untergeordneten Elemente verwendet.
public enum class VirtualizationMode
public enum VirtualizationMode
type VirtualizationMode =
Public Enum VirtualizationMode
- Vererbung
Felder
| Name | Wert | Beschreibung |
|---|---|---|
| Standard | 0 | Erstellen und verwerfen Sie die Elementcontainer. |
| Recycling | 1 | Verwenden Sie die Elementcontainer wieder. |
Beispiele
Im folgenden Beispiel wird eine ListBox angefügte Eigenschaft auf Recycling erstellt und festgelegt VirtualizationMode .
<StackPanel>
<StackPanel.Resources>
<src:LotsOfItems x:Key="data"/>
</StackPanel.Resources>
<ListBox Height="150" ItemsSource="{StaticResource data}"
VirtualizingStackPanel.VirtualizationMode="Recycling" />
</StackPanel>
Das folgende Beispiel zeigt die im vorherigen Beispiel verwendeten Daten.
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
Hinweise
Standardmäßig erstellt ein VirtualizingStackPanel Elementcontainer für jedes sichtbare Element und verwirft ihn, wenn es nicht mehr benötigt wird (z. B. wenn das Element außerhalb der Ansicht gescrollt wird). Wenn ein Element ItemsControl viele Elemente enthält, kann sich der Prozess des Erstellens und Verwerfens von Elementcontainern negativ auf die Leistung auswirken. Wenn VirtualizationMode die Option "Recycling" festgelegt ist, werden die Elementcontainer wiederverwendet, VirtualizingStackPanel anstatt jedes Mal eine neue zu erstellen.
Wenn VirtualizingStackPanel keine Elementcontainer wiederverwendet werden können, wird der Standardmodus der Virtualisierung verwendet, der zum Erstellen und Verwerfen von Elementcontainern für jedes Element dient. In der folgenden Liste werden Fälle beschrieben, in denen die VirtualizingStackPanel Elementcontainer nicht wiederverwendet werden können:
Das ItemsControl enthält Elementcontainer unterschiedlicher Typen. Beispielsweise kann ein Menu Element Elemente enthalten, die sowohl als MenuItemSeparator auch Objekte als Elementcontainer verwenden.
Sie erstellen explizit die Elementcontainer für die ItemsControl.