Export (0) Print
Expand All

VirtualizingPanel.IsVirtualizing Attached Property

.NET Framework 4.5

Gets or sets a value that indicates that this VirtualizingPanel is virtualizing its child collection.

Namespace:  System.Windows.Controls
Assembly:  PresentationFramework (in PresentationFramework.dll)
XMLNS for XAML: http://schemas.microsoft.com/winfx/2006/xaml/presentation, http://schemas.microsoft.com/netfx/2007/xaml/presentation

See GetIsVirtualizing, SetIsVirtualizing
<object VirtualizingPanel.IsVirtualizing="bool" .../>

Property Value

Type: System.Boolean
true if this instance of VirtualizingPanel is virtualizing its child collection; otherwise false. The default is true.

Identifier field

IsVirtualizingProperty

Metadata properties set to true

None

The standard layout system creates item containers and computes layout for each item associated with a list control. The word "virtualize" refers to a technique by which a subset of UI elements are generated from a larger number of data items based on which items are visible on-screen. Generating many UI elements when only a few elements might be on the screen can adversely affect the performance of your application. For example, the VirtualizingStackPanel calculates the number of visible items and works with the ItemContainerGenerator from an ItemsControl (such as ListBox or ListView) to create UI elements only for visible items.

The following example shows how to bind to an XML data source and virtualize the items displayed in a ListBox element by using XAML. Notice that the IsVirtualizing attached property is explicitly set to 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>

.NET Framework

Supported in: 4.5

Windows 8.1, Windows Server 2012 R2, Windows 8, Windows Server 2012, Windows 7, Windows Vista SP2, Windows Server 2008 (Server Core Role not supported), Windows Server 2008 R2 (Server Core Role supported with SP1 or later; Itanium not supported)

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

Show:
© 2014 Microsoft