VirtualizationMode Enumeração
TOC
Recolher sumário
Expandir sumário
Este artigo foi traduzido por máquina. Para visualizar o arquivo em inglês, marque a caixa de seleção Inglês. Você também pode exibir o texto Em inglês em uma janela pop-up, movendo o ponteiro do mouse sobre o texto.
Tradução
Inglês

Enumeração VirtualizationMode

 

Especifica o método de VirtualizingStackPanel usa para gerenciar a virtualização de seus itens filho.

Namespace:   System.Windows.Controls
Assembly:  PresentationFramework (em PresentationFramework.dll)

public enum VirtualizationMode

Nome do membroDescrição
Recycling

Reutilize os contêineres de item.

Standard

Criar e descartar os contêineres de item.

Por padrão, um VirtualizingStackPanel cria um contêiner de itens para cada item visível e descarta quando ele não for mais necessário (por exemplo, quando o item é rolado para fora da exibição). Quando um ItemsControl contém muitos itens, o processo de criação e descartando contêineres de itens pode afetar negativamente o desempenho. Quando P:System.Windows.Controls.VirtualizingStackPanel.VirtualizationMode é definido como Recycling, o VirtualizingStackPanel reutiliza contêineres de itens em vez disso, da criação de um novo cada vez.

Quando VirtualizingStackPanel não pode reciclar contêineres de itens, ele usa o modo padrão de virtualização, que é criar e descartar os contêineres de itens para cada item. A lista a seguir descreve os casos quando o VirtualizingStackPanel não pode reciclar contêineres de itens:

  • O ItemsControl contém contêineres de itens de tipos diferentes. Por exemplo, um Menu pode ter itens que usam MenuItem e T:System.Windows.Controls.Primitives.Separator objetos como os contêineres de item.

  • Criar explicitamente os contêineres de item para o ItemsControl.

O exemplo a seguir cria um ListBox e define o P:System.Windows.Controls.VirtualizingStackPanel.VirtualizationMode anexado a propriedade Recycling.

<StackPanel>

  <StackPanel.Resources>
    <src:LotsOfItems x:Key="data"/>
  </StackPanel.Resources>

  <ListBox Height="150" ItemsSource="{StaticResource data}" 
             VirtualizingStackPanel.VirtualizationMode="Recycling" />

</StackPanel>

O exemplo a seguir mostra os dados usados no exemplo anterior.

public class LotsOfItems : ObservableCollection<String>
{
    public LotsOfItems()
    {
        for (int i = 0; i < 1000; ++i)
        {
            Add("item " + i.ToString());
        }
    }
}

.NET Framework
Disponível desde 3.0
Silverlight
Disponível desde 3.0
Windows Phone Silverlight
Disponível desde 7.0
Retornar ao topo
Mostrar:
© 2016 Microsoft