VirtualizationMode Enum
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menentukan metode yang digunakan VirtualizingStackPanel untuk mengelola virtualisasi item turunannya.
public enum class VirtualizationMode
public enum VirtualizationMode
type VirtualizationMode =
Public Enum VirtualizationMode
- Warisan
Bidang
| Nama | Nilai | Deskripsi |
|---|---|---|
| Standard | 0 | Buat dan buang kontainer item. |
| Recycling | 1 | Gunakan kembali kontainer item. |
Contoh
Contoh berikut membuat ListBox dan mengatur VirtualizationMode properti terlampir ke Daur Ulang.
<StackPanel>
<StackPanel.Resources>
<src:LotsOfItems x:Key="data"/>
</StackPanel.Resources>
<ListBox Height="150" ItemsSource="{StaticResource data}"
VirtualizingStackPanel.VirtualizationMode="Recycling" />
</StackPanel>
Contoh berikut menunjukkan data yang digunakan dalam contoh sebelumnya.
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
Keterangan
Secara default, membuat VirtualizingStackPanel kontainer item untuk setiap item yang terlihat dan membuangnya saat tidak lagi diperlukan (seperti ketika item digulir keluar dari tampilan). ItemsControl Ketika berisi banyak item, proses membuat dan membuang kontainer item dapat berdampak negatif pada performa. Saat VirtualizationMode diatur ke Daur Ulang, VirtualizingStackPanel kontainer item digunakan kembali alih-alih membuat yang baru setiap kali.
Ketika VirtualizingStackPanel tidak dapat mendaur ulang kontainer item, kontainer tersebut menggunakan mode virtualisasi standar, yaitu membuat dan membuang kontainer item untuk setiap item. Daftar berikut ini menjelaskan kasus ketika VirtualizingStackPanel tidak dapat mendaur ulang kontainer item:
ItemsControl berisi kontainer item dari berbagai jenis. Misalnya, mungkin Menu memiliki item yang menggunakan objek MenuItem dan Separator sebagai kontainer item.
Anda secara eksplisit membuat kontainer item untuk ItemsControl.