VirtualizingStackPanel.IsVirtualizing 添付プロパティ

定義

この VirtualizingStackPanel が子コレクションを仮想化していることを示す値を取得または設定します。

see GetIsVirtualizing, and SetIsVirtualizing
see GetIsVirtualizing, and SetIsVirtualizing
see GetIsVirtualizing, and SetIsVirtualizing

次の例は、XAML を使用して XML データ ソースにバインドし、 ListBox 要素に表示される項目を仮想化する方法を示しています。 IsVirtualizing 添付プロパティが明示的に trueに設定されていることに注意してください。

<Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
      WindowTitle="VirtualizingStackPanel Sample"
      Height="150"
      VerticalAlignment="Top">
  <Page.Resources>
    <XmlDataProvider x:Key="Leagues" Source="Leagues.xml" XPath="Leagues/League"/>
    <DataTemplate x:Key="NameDataStyle">
      <TextBlock Text="{Binding XPath=@name}" FontFamily="Arial" FontSize="12" Foreground="Black"/>
    </DataTemplate>
  </Page.Resources>

  <Border HorizontalAlignment="Left"
          VerticalAlignment="Top"
          BorderBrush="Black"
          BorderThickness="2">
    <ScrollViewer>
      <StackPanel DataContext="{Binding Source={StaticResource Leagues}}">
        <TextBlock Text="{Binding XPath=@name}" FontFamily="Arial" FontSize="18" Foreground="Black"/>
        <ListBox VirtualizingStackPanel.IsVirtualizing="True"
                 ItemsSource="{Binding XPath=Team}"
                 ItemTemplate="{DynamicResource NameDataStyle}"/>
      </StackPanel>
    </ScrollViewer>
  </Border>
</Page>

注釈

標準レイアウト システムでは、項目コンテナーが作成され、リスト コントロールに関連付けられている各項目のレイアウトが計算されます。 "仮想化" という単語は、画面上に表示される項目に基づいて、より多くのデータ項目から UI 要素のサブセットを生成する手法を指します。 少数の要素のみが画面上にある可能性がある場合に多くの UI 要素を生成すると、アプリケーションのパフォーマンスに悪影響を及ぼす可能性があります。 VirtualizingStackPanelは、表示される項目の数を計算し、ItemsControlItemContainerGenerator (ListBoxListViewなど) と連携して、表示される項目に対してのみ UI 要素を作成します。

依存関係プロパティ情報

|識別子フィールド|IsVirtualizingProperty| | trueに設定されたメタデータ プロパティ|なし|

適用対象

こちらもご覧ください