次の方法で共有


VirtualizingStackPanel.IsVirtualizing 添付プロパティ

定義

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

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

次の例は、XML データ ソースにバインドし、XAML を使用して要素に表示される項目を仮想化する方法を 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、表示されている項目の数を計算し、 (や ListViewなどListBox) の ItemsControlItemContainerGenerator使用して、表示されている項目に対してのみ UI 要素を作成します。

依存プロパティ情報

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

適用対象

こちらもご覧ください