VirtualizingPanel.IsVirtualizing 附加属性

定义

获取或设置一个值,该值指示此 VirtualizingPanel 正在虚拟化其子集合。

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 可见项的数量,并使用 ItemContainerGenerator 来自 ItemsControl ((例如 ListBoxListView) )创建 UI 元素,以便仅为可见项创建 UI 元素。

依赖项属性信息

标识符字段 IsVirtualizingProperty
元数据属性设置为 true

适用于