VirtualizationMode VirtualizationMode VirtualizationMode VirtualizationMode Enum

Definition

Gibt die Methode an, die der VirtualizingStackPanel zum Verwalten der Virtualisierung seiner untergeordneten Elemente verwendet.Specifies the method the VirtualizingStackPanel uses to manage virtualizing its child items.

public enum class VirtualizationMode
public enum VirtualizationMode
type VirtualizationMode = 
Public Enum VirtualizationMode
Vererbung
VirtualizationModeVirtualizationModeVirtualizationModeVirtualizationMode

Felder

Recycling Recycling Recycling Recycling 1

Wiederverwenden der Elementcontainer.Reuse the item containers.

Standard Standard Standard Standard 0

Erstellen und Verwerfen der Elementcontainer.Create and discard the item containers.

Beispiele

Im folgenden Beispiel wird ein ListBox erstellt und die VirtualizationMode angefügte-Eigenschaft auf Wiederverwendung festgelegt.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>

Das folgende Beispiel zeigt die Daten, die im vorherigen Beispiel verwendet wurden.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

Hinweise

Standardmäßig erstellt eine VirtualizingStackPanel einen Element Container für jedes sichtbare Element und verwirft diese, wenn Sie nicht mehr benötigt wird (z. b. wenn das Element aus der Ansicht heraus bewegt wird).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). Wenn eine zahlreiche Elemente enthält,kannsichderProzesszumErstellenundVerwerfenvonElementContainernnegativaufdieLeistungauswirken.ItemsControlWhen an ItemsControl contains a many items, the process of creating and discarding item containers can negatively affect performance. Wenn VirtualizationMode auf Wiederverwendung festgelegt wird VirtualizingStackPanel , verwendet die Element Container wieder, anstatt jedes Mal ein neues zu erstellen.When VirtualizationMode is set to Recycling, the VirtualizingStackPanel reuses item containers instead of creating a new one each time.

Wenn VirtualizingStackPanel Element Container nicht wieder verwendet werden können, wird der Standardmodus für die Virtualisierung verwendet, mit dem Element Container für jedes Element erstellt und verworfen werden.When VirtualizingStackPanel cannot recycle item containers, it uses the standard mode of virtualization, which is to create and discard item containers for each item. In der folgenden Liste werden Fälle beschrieben VirtualizingStackPanel , in denen Element Container nicht wieder verwendet werden können:The following list describes cases when the VirtualizingStackPanel cannot recycle item containers:

  • Der ItemsControl enthält Element Container unterschiedlicher Typen.The ItemsControl contains item containers of different types. Beispielsweise kann ein Menu Elemente enthalten, die sowohl MenuItem -als Separator auch-Objekte als Element Container verwenden.For example, a Menu might have items that use both MenuItem and Separator objects as the item containers.

  • Sie erstellen explizit die Element Container für das ItemsControl.You explicitly create the item containers for the ItemsControl.

Gilt für:

Siehe auch