VirtualizingPanel.VirtualizationMode Propriedade anexada
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Obtém ou define como um painel em um ItemsControl virtualiza seus itens filhos.
see GetVirtualizationMode, and SetVirtualizationMode
see GetVirtualizationMode, and SetVirtualizationMode
see GetVirtualizationMode, and SetVirtualizationMode
Exemplos
O exemplo a seguir cria um ListBox e define a VirtualizingPanel.VirtualizationMode propriedade anexada como 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());
}
}
}
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
Comentários
Por padrão, um VirtualizingPanel item cria um contêiner de item para cada item visível e o descarta quando ele não é mais necessário (como quando o item é rolado para fora do modo de exibição). Quando um ItemsControl contém muitos itens, o processo de criação e descarte de contêineres de itens pode afetar negativamente o desempenho. Quando VirtualizingPanel.VirtualizationMode é definido como Recycling, o VirtualizingPanel item reutiliza contêineres de item em vez de criar um novo cada vez.