VirtualizationMode VirtualizationMode VirtualizationMode VirtualizationMode Enum

Definición

Especifica el método que usa VirtualizingStackPanel para administrar la virtualización de sus elementos secundarios.Specifies the method the VirtualizingStackPanel uses to manage virtualizing its child items.

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

Campos

Recycling Recycling Recycling Recycling 1

Reutilice los contenedores de elementos.Reuse the item containers.

Standard Standard Standard Standard 0

Cree y descarte los contenedores de elementos.Create and discard the item containers.

Ejemplos

En el ejemplo siguiente se crea un ListBox y establece el VirtualizationMode propiedad adjunta en reciclando.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>

El ejemplo siguiente muestra los datos utilizados en el ejemplo anterior.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

Comentarios

De forma predeterminada, un VirtualizingStackPanel crea un contenedor de elementos para cada elemento visible y lo descarta cuando ya no es necesario (por ejemplo, cuando el elemento se desplaza fuera de la vista).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). Cuando un ItemsControl contiene muchos elementos, el proceso de crear y descartar contenedores de elementos puede afectar negativamente al rendimiento.When an ItemsControl contains a many items, the process of creating and discarding item containers can negatively affect performance. Cuando VirtualizationMode está establecido en reciclando, el VirtualizingStackPanel reutiliza contenedores de elementos en su lugar de crear uno nuevo cada vez.When VirtualizationMode is set to Recycling, the VirtualizingStackPanel reuses item containers instead of creating a new one each time.

Cuando VirtualizingStackPanel no se puede reciclar los contenedores de elementos, utiliza el modo estándar de virtualización, que consiste en crear y descartar contenedores de elementos para cada elemento.When VirtualizingStackPanel cannot recycle item containers, it uses the standard mode of virtualization, which is to create and discard item containers for each item. En la lista siguiente se describe casos cuando el VirtualizingStackPanel no se puede reciclar los contenedores de elementos:The following list describes cases when the VirtualizingStackPanel cannot recycle item containers:

  • El ItemsControl contiene los contenedores de elementos de diferentes tipos.The ItemsControl contains item containers of different types. Por ejemplo, un Menu podría tener los elementos que se usan MenuItem y Separator objetos como los contenedores de elementos.For example, a Menu might have items that use both MenuItem and Separator objects as the item containers.

  • Se crean explícitamente los contenedores de elementos para el ItemsControl.You explicitly create the item containers for the ItemsControl.

Se aplica a

Consulte también: