VirtualizationMode VirtualizationMode VirtualizationMode VirtualizationMode Enum

定義

VirtualizingStackPanel が子アイテムの仮想化の管理に使用するメソッドを指定します。Specifies the method the VirtualizingStackPanel uses to manage virtualizing its child items.

public enum class VirtualizationMode
public enum VirtualizationMode
type VirtualizationMode = 
Public Enum VirtualizationMode
継承
VirtualizationModeVirtualizationModeVirtualizationModeVirtualizationMode

フィールド

Recycling Recycling Recycling Recycling 1

項目コンテナーを再利用します。Reuse the item containers.

Standard Standard Standard Standard 0

項目コンテナーを作成し、破棄します。Create and discard the item containers.

ListBox作成し、 VirtualizationMode添付プロパティをリサイクルに設定する例を次に示します。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>

次の例では、前の例で使用したデータを示します。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

注釈

既定では、 VirtualizingStackPanelは、表示されている項目ごとに項目コンテナーを作成し、不要になったときに破棄します (項目がスクロールして表示されなくなった場合など)。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). ItemsControl多数の項目が含まれている場合、項目コンテナーを作成および破棄するプロセスによってパフォーマンスが低下する可能性があります。When an ItemsControl contains a many items, the process of creating and discarding item containers can negatively affect performance. VirtualizationModeリサイクルに設定されてVirtualizingStackPanelいる場合、は毎回新しい項目を作成するのではなく、項目コンテナーを再利用します。When VirtualizationMode is set to Recycling, the VirtualizingStackPanel reuses item containers instead of creating a new one each time.

VirtualizingStackPanel項目コンテナーを再利用できない場合は、仮想化の標準モードを使用します。これは、項目ごとに項目コンテナーを作成および破棄するためのものです。When VirtualizingStackPanel cannot recycle item containers, it uses the standard mode of virtualization, which is to create and discard item containers for each item. 次の一覧では、がVirtualizingStackPanel項目コンテナーをリサイクルできない場合について説明します。The following list describes cases when the VirtualizingStackPanel cannot recycle item containers:

  • ItemsControlは、さまざまな種類の項目コンテナーが含まれています。The ItemsControl contains item containers of different types. たとえば、にはMenu 、オブジェクトとSeparatorオブジェクトの両方MenuItemを項目コンテナーとして使用する項目が含まれている場合があります。For example, a Menu might have items that use both MenuItem and Separator objects as the item containers.

  • の項目コンテナーは、 ItemsControl明示的に作成します。You explicitly create the item containers for the ItemsControl.

適用対象

こちらもご覧ください