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 filho.
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 contêiner de item cria para cada item visível e o descarta quando ele não é mais necessário (como quando o item é rolado para fora da 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 a cada vez.