Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
Fetching contributors…
Cannot retrieve contributors at this time
1706 lines (1611 sloc) 113 KB
<Type Name="VirtualizingStackPanel" FullName="System.Windows.Controls.VirtualizingStackPanel">
<TypeSignature Language="C#" Value="public class VirtualizingStackPanel : System.Windows.Controls.VirtualizingPanel, System.Windows.Controls.Primitives.IScrollInfo" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi VirtualizingStackPanel extends System.Windows.Controls.VirtualizingPanel implements class System.Windows.Controls.Primitives.IScrollInfo" />
<TypeSignature Language="DocId" Value="T:System.Windows.Controls.VirtualizingStackPanel" />
<TypeSignature Language="VB.NET" Value="Public Class VirtualizingStackPanel&#xA;Inherits VirtualizingPanel&#xA;Implements IScrollInfo" />
<TypeSignature Language="C++ CLI" Value="public ref class VirtualizingStackPanel : System::Windows::Controls::VirtualizingPanel, System::Windows::Controls::Primitives::IScrollInfo" />
<TypeSignature Language="F#" Value="type VirtualizingStackPanel = class&#xA; inherit VirtualizingPanel&#xA; interface IScrollInfo" />
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.Windows.Controls.VirtualizingPanel</BaseTypeName>
</Base>
<Interfaces>
<Interface>
<InterfaceName>System.Windows.Controls.Primitives.IScrollInfo</InterfaceName>
</Interface>
</Interfaces>
<Docs>
<summary>Arranges and virtualizes content on a single line that is oriented either horizontally or vertically.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
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 [!INCLUDE[TLA#tla_ui](~/includes/tlasharptla-ui-md.md)] elements are generated from a larger number of data items based on which items are visible on-screen. Generating many [!INCLUDE[TLA2#tla_ui](~/includes/tla2sharptla-ui-md.md)] elements when only a few elements might be on the screen can adversely affect the performance of your application. The <xref:System.Windows.Controls.VirtualizingStackPanel> calculates the number of visible items and works with the <xref:System.Windows.Controls.ItemContainerGenerator> from an <xref:System.Windows.Controls.ItemsControl> (such as <xref:System.Windows.Controls.ListBox> or <xref:System.Windows.Controls.ListView>) to create [!INCLUDE[TLA2#tla_ui](~/includes/tla2sharptla-ui-md.md)] elements only for visible items.
Virtualization in a <xref:System.Windows.Controls.StackPanel> only occurs when the items control contained in the panel creates its own item containers. You can ensure this happens by using data binding. In scenarios where item containers are created and added to the items control, a <xref:System.Windows.Controls.VirtualizingStackPanel> offers no performance advantage over a <xref:System.Windows.Controls.StackPanel>.
<xref:System.Windows.Controls.VirtualizingStackPanel> is the default items host for the <xref:System.Windows.Controls.ListBox> element. By default, the `VirtualizingStackPanel.IsVirtualizing` attached property is set to `true`.
When the `VirtualizingStackPanel.IsVirtualizing` attached property is set to `false`, a <xref:System.Windows.Controls.VirtualizingStackPanel> behaves the same as an ordinary <xref:System.Windows.Controls.StackPanel>.
## Examples
The following example shows how to bind to an XML data source and virtualize the items displayed in a <xref:System.Windows.Controls.ListBox> element using [!INCLUDE[TLA#tla_xaml](~/includes/tlasharptla-xaml-md.md)]. Notice that the `VirtualizingStackPanel.IsVirtualizing` attached property is explicitly set to `true`.
[!code-xaml[VirtualizingStackPanel_Intro#2](~/samples/snippets/csharp/VS_Snippets_Wpf/VirtualizingStackPanel_Intro/CS/default.xaml#2)]
The following example creates a <xref:System.Windows.Controls.ListBox> and sets the `VirtualizingStackPanel.VirtualizationMode` attached property to <xref:System.Windows.Controls.VirtualizationMode.Recycling>.
[!code-xaml[RecycleItemContainerShippets#VirtualizationMode](~/samples/snippets/csharp/VS_Snippets_Wpf/RecycleItemContainerShippets/CSharp/Window1.xaml#virtualizationmode)]
The following example shows the data used in the previous example.
[!code-csharp[RecycleItemContainerShippets#ListBoxData](~/samples/snippets/csharp/VS_Snippets_Wpf/RecycleItemContainerShippets/CSharp/Window1.xaml.cs#listboxdata)]
[!code-vb[RecycleItemContainerShippets#ListBoxData](~/samples/snippets/visualbasic/VS_Snippets_Wpf/RecycleItemContainerShippets/visualbasic/window1.xaml.vb#listboxdata)]
]]></format>
</remarks>
<altmember cref="T:System.Windows.Controls.StackPanel" />
<altmember cref="T:System.Windows.Controls.ListBox" />
</Docs>
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public VirtualizingStackPanel ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor() cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.#ctor" />
<MemberSignature Language="VB.NET" Value="Public Sub New ()" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; VirtualizingStackPanel();" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute FrameworkAlternate="netframework-4.0">
<AttributeName>System.Runtime.TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")</AttributeName>
</Attribute>
</Attributes>
<Parameters />
<Docs>
<summary>Initializes a new instance of the <see cref="T:System.Windows.Controls.VirtualizingStackPanel" /> class.</summary>
<remarks>To be added.</remarks>
<altmember cref="M:System.Windows.Controls.VirtualizingStackPanel.MeasureOverride(System.Windows.Size)" />
</Docs>
</Member>
<Member MemberName="AddCleanUpVirtualizedItemHandler">
<MemberSignature Language="C#" Value="public static void AddCleanUpVirtualizedItemHandler (System.Windows.DependencyObject element, System.Windows.Controls.CleanUpVirtualizedItemEventHandler handler);" />
<MemberSignature Language="ILAsm" Value=".method public static hidebysig void AddCleanUpVirtualizedItemHandler(class System.Windows.DependencyObject element, class System.Windows.Controls.CleanUpVirtualizedItemEventHandler handler) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.AddCleanUpVirtualizedItemHandler(System.Windows.DependencyObject,System.Windows.Controls.CleanUpVirtualizedItemEventHandler)" />
<MemberSignature Language="VB.NET" Value="Public Shared Sub AddCleanUpVirtualizedItemHandler (element As DependencyObject, handler As CleanUpVirtualizedItemEventHandler)" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; static void AddCleanUpVirtualizedItemHandler(System::Windows::DependencyObject ^ element, System::Windows::Controls::CleanUpVirtualizedItemEventHandler ^ handler);" />
<MemberSignature Language="F#" Value="static member AddCleanUpVirtualizedItemHandler : System.Windows.DependencyObject * System.Windows.Controls.CleanUpVirtualizedItemEventHandler -&gt; unit" Usage="System.Windows.Controls.VirtualizingStackPanel.AddCleanUpVirtualizedItemHandler (element, handler)" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="element" Type="System.Windows.DependencyObject" />
<Parameter Name="handler" Type="System.Windows.Controls.CleanUpVirtualizedItemEventHandler" />
</Parameters>
<Docs>
<param name="element">The <see cref="T:System.Windows.DependencyObject" /> that is listening for this event.</param>
<param name="handler">The event handler that is to be added.</param>
<summary>Adds an event handler for the <see cref="E:System.Windows.Controls.VirtualizingStackPanel.CleanUpVirtualizedItem" /> attached event.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
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 [!INCLUDE[TLA2#tla_ui](~/includes/tla2sharptla-ui-md.md)] elements are generated from a larger number of data items based on which items are visible on-screen. Generating many [!INCLUDE[TLA2#tla_ui](~/includes/tla2sharptla-ui-md.md)] elements when only a few elements might be on the screen can adversely affect the performance of your application. The <xref:System.Windows.Controls.VirtualizingStackPanel> calculates the number of visible items and works with the <xref:System.Windows.Controls.ItemContainerGenerator> from an <xref:System.Windows.Controls.ItemsControl> (such as <xref:System.Windows.Controls.ListBox> or <xref:System.Windows.Controls.ListView>) to create [!INCLUDE[TLA2#tla_ui](~/includes/tla2sharptla-ui-md.md)] elements only for visible items.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="ArrangeOverride">
<MemberSignature Language="C#" Value="protected override System.Windows.Size ArrangeOverride (System.Windows.Size arrangeSize);" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig virtual instance valuetype System.Windows.Size ArrangeOverride(valuetype System.Windows.Size arrangeSize) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.ArrangeOverride(System.Windows.Size)" />
<MemberSignature Language="VB.NET" Value="Protected Overrides Function ArrangeOverride (arrangeSize As Size) As Size" />
<MemberSignature Language="C++ CLI" Value="protected:&#xA; override System::Windows::Size ArrangeOverride(System::Windows::Size arrangeSize);" />
<MemberSignature Language="F#" Value="override this.ArrangeOverride : System.Windows.Size -&gt; System.Windows.Size" Usage="virtualizingStackPanel.ArrangeOverride arrangeSize" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Windows.Size</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="arrangeSize" Type="System.Windows.Size" />
</Parameters>
<Docs>
<param name="arrangeSize">The <see cref="T:System.Windows.Size" /> that this element should use to arrange its child elements.</param>
<summary>Arranges the content of a <see cref="T:System.Windows.Controls.VirtualizingStackPanel" /> element.</summary>
<returns>The <see cref="T:System.Windows.Size" /> that represents the arranged size of this <see cref="T:System.Windows.Controls.VirtualizingStackPanel" /> element and its child elements.</returns>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
You can override the <xref:System.Windows.Controls.VirtualizingStackPanel.ArrangeOverride%2A> and <xref:System.Windows.Controls.VirtualizingStackPanel.MeasureOverride%2A> methods in a derived class for custom layout behavior.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="BringIndexIntoView">
<MemberSignature Language="C#" Value="protected internal override void BringIndexIntoView (int index);" />
<MemberSignature Language="ILAsm" Value=".method familyorassemblyhidebysig virtual instance void BringIndexIntoView(int32 index) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.BringIndexIntoView(System.Int32)" />
<MemberSignature Language="VB.NET" Value="Protected Friend Overrides Sub BringIndexIntoView (index As Integer)" />
<MemberSignature Language="C++ CLI" Value="protected public:&#xA; override void BringIndexIntoView(int index);" />
<MemberSignature Language="F#" Value="override this.BringIndexIntoView : int -&gt; unit" Usage="virtualizingStackPanel.BringIndexIntoView index" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="index" Type="System.Int32" />
</Parameters>
<Docs>
<param name="index">The position of the item to generate and make visible.</param>
<summary>Generates the item at the specified index position and brings it into view.</summary>
<remarks>To be added.</remarks>
<exception cref="T:System.ArgumentOutOfRangeException">The <paramref name="index" /> position does not exist in the child collection.</exception>
</Docs>
</Member>
<Member MemberName="CanHierarchicallyScrollAndVirtualizeCore">
<MemberSignature Language="C#" Value="protected override bool CanHierarchicallyScrollAndVirtualizeCore { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance bool CanHierarchicallyScrollAndVirtualizeCore" />
<MemberSignature Language="DocId" Value="P:System.Windows.Controls.VirtualizingStackPanel.CanHierarchicallyScrollAndVirtualizeCore" />
<MemberSignature Language="VB.NET" Value="Protected Overrides ReadOnly Property CanHierarchicallyScrollAndVirtualizeCore As Boolean" />
<MemberSignature Language="C++ CLI" Value="protected:&#xA; virtual property bool CanHierarchicallyScrollAndVirtualizeCore { bool get(); };" />
<MemberSignature Language="F#" Value="member this.CanHierarchicallyScrollAndVirtualizeCore : bool" Usage="System.Windows.Controls.VirtualizingStackPanel.CanHierarchicallyScrollAndVirtualizeCore" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets value that indicates whether the <see cref="T:System.Windows.Controls.VirtualizingStackPanel" /> can virtualize items that are grouped or organized in a hierarchy.</summary>
<value>
<see langword="true" /> in all cases.</value>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="CanHorizontallyScroll">
<MemberSignature Language="C#" Value="public bool CanHorizontallyScroll { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance bool CanHorizontallyScroll" />
<MemberSignature Language="DocId" Value="P:System.Windows.Controls.VirtualizingStackPanel.CanHorizontallyScroll" />
<MemberSignature Language="VB.NET" Value="Public Property CanHorizontallyScroll As Boolean" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; property bool CanHorizontallyScroll { bool get(); void set(bool value); };" />
<MemberSignature Language="F#" Value="member this.CanHorizontallyScroll : bool with get, set" Usage="System.Windows.Controls.VirtualizingStackPanel.CanHorizontallyScroll" />
<MemberType>Property</MemberType>
<Implements>
<InterfaceMember>P:System.Windows.Controls.Primitives.IScrollInfo.CanHorizontallyScroll</InterfaceMember>
</Implements>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName>System.ComponentModel.DefaultValue(false)</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets or sets a value that indicates whether a <see cref="T:System.Windows.Controls.VirtualizingStackPanel" /> can scroll in the horizontal dimension.</summary>
<value>
<see langword="true" /> if content can scroll in the horizontal dimension; otherwise, <see langword="false" />. The default is <see langword="false" />.</value>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="CanVerticallyScroll">
<MemberSignature Language="C#" Value="public bool CanVerticallyScroll { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance bool CanVerticallyScroll" />
<MemberSignature Language="DocId" Value="P:System.Windows.Controls.VirtualizingStackPanel.CanVerticallyScroll" />
<MemberSignature Language="VB.NET" Value="Public Property CanVerticallyScroll As Boolean" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; property bool CanVerticallyScroll { bool get(); void set(bool value); };" />
<MemberSignature Language="F#" Value="member this.CanVerticallyScroll : bool with get, set" Usage="System.Windows.Controls.VirtualizingStackPanel.CanVerticallyScroll" />
<MemberType>Property</MemberType>
<Implements>
<InterfaceMember>P:System.Windows.Controls.Primitives.IScrollInfo.CanVerticallyScroll</InterfaceMember>
</Implements>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName>System.ComponentModel.DefaultValue(false)</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets or sets a value that indicates whether content can scroll in the vertical dimension.</summary>
<value>
<see langword="true" /> if content can scroll in the vertical dimension; otherwise, <see langword="false" />. The default is <see langword="false" />.</value>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="CleanUpVirtualizedItem">
<MemberSignature Language="C#" Value="see AddCleanUpVirtualizedItemHandler, and RemoveCleanUpVirtualizedItemHandler" />
<MemberSignature Language="ILAsm" Value="see AddCleanUpVirtualizedItemHandler, and RemoveCleanUpVirtualizedItemHandler" />
<MemberSignature Language="DocId" Value="E:System.Windows.Controls.VirtualizingStackPanel.CleanUpVirtualizedItem" />
<MemberSignature Language="VB.NET" Value="see AddCleanUpVirtualizedItemHandler, and RemoveCleanUpVirtualizedItemHandler" />
<MemberSignature Language="F#" Value="see AddCleanUpVirtualizedItemHandler, and RemoveCleanUpVirtualizedItemHandler" Usage="see AddCleanUpVirtualizedItemHandler, and RemoveCleanUpVirtualizedItemHandler" />
<MemberType>AttachedEvent</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Docs>
<summary>Occurs when an item is being re-virtualized by the <see cref="T:System.Windows.Controls.ItemsControl" /> that is associated with this instance of <see cref="T:System.Windows.Controls.VirtualizingStackPanel" />.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
<a name="routedEventInfo_CleanUpVirtualizedItem"></a>
## Routed Event Information
|||
|-|-|
|Identifier field|<xref:System.Windows.Controls.VirtualizingStackPanel.CleanUpVirtualizedItemEvent>|
|Routing strategy|Direct|
|Delegate|<xref:System.Windows.Controls.CleanUpVirtualizedItemEventHandler>|
]]></format>
</remarks>
<altmember cref="F:System.Windows.Controls.VirtualizingStackPanel.CleanUpVirtualizedItemEvent" />
</Docs>
</Member>
<Member MemberName="CleanUpVirtualizedItemEvent">
<MemberSignature Language="C#" Value="public static readonly System.Windows.RoutedEvent CleanUpVirtualizedItemEvent;" />
<MemberSignature Language="ILAsm" Value=".field public static initonly class System.Windows.RoutedEvent CleanUpVirtualizedItemEvent" />
<MemberSignature Language="DocId" Value="F:System.Windows.Controls.VirtualizingStackPanel.CleanUpVirtualizedItemEvent" />
<MemberSignature Language="VB.NET" Value="Public Shared ReadOnly CleanUpVirtualizedItemEvent As RoutedEvent " />
<MemberSignature Language="C++ CLI" Value="public: static initonly System::Windows::RoutedEvent ^ CleanUpVirtualizedItemEvent;" />
<MemberSignature Language="F#" Value=" staticval mutable CleanUpVirtualizedItemEvent : System.Windows.RoutedEvent" Usage="System.Windows.Controls.VirtualizingStackPanel.CleanUpVirtualizedItemEvent" />
<MemberType>Field</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Windows.RoutedEvent</ReturnType>
</ReturnValue>
<Docs>
<summary>Identifies the <see cref="E:System.Windows.Controls.VirtualizingStackPanel.CleanUpVirtualizedItem" /> attached event.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="ExtentHeight">
<MemberSignature Language="C#" Value="public double ExtentHeight { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance float64 ExtentHeight" />
<MemberSignature Language="DocId" Value="P:System.Windows.Controls.VirtualizingStackPanel.ExtentHeight" />
<MemberSignature Language="VB.NET" Value="Public ReadOnly Property ExtentHeight As Double" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; property double ExtentHeight { double get(); };" />
<MemberSignature Language="F#" Value="member this.ExtentHeight : double" Usage="System.Windows.Controls.VirtualizingStackPanel.ExtentHeight" />
<MemberType>Property</MemberType>
<Implements>
<InterfaceMember>P:System.Windows.Controls.Primitives.IScrollInfo.ExtentHeight</InterfaceMember>
</Implements>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Double</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets a value that contains the vertical size of the extent.</summary>
<value>A <see cref="T:System.Double" /> that represents the vertical size of the extent. The default is 0.0.</value>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="ExtentWidth">
<MemberSignature Language="C#" Value="public double ExtentWidth { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance float64 ExtentWidth" />
<MemberSignature Language="DocId" Value="P:System.Windows.Controls.VirtualizingStackPanel.ExtentWidth" />
<MemberSignature Language="VB.NET" Value="Public ReadOnly Property ExtentWidth As Double" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; property double ExtentWidth { double get(); };" />
<MemberSignature Language="F#" Value="member this.ExtentWidth : double" Usage="System.Windows.Controls.VirtualizingStackPanel.ExtentWidth" />
<MemberType>Property</MemberType>
<Implements>
<InterfaceMember>P:System.Windows.Controls.Primitives.IScrollInfo.ExtentWidth</InterfaceMember>
</Implements>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Double</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets a value that contains the horizontal size of the extent.</summary>
<value>A <see cref="T:System.Double" /> that represents the horizontal size of the extent. The default is 0.0.</value>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="GetIsVirtualizing">
<MemberSignature Language="C#" Value="public static bool GetIsVirtualizing (System.Windows.DependencyObject o);" />
<MemberSignature Language="ILAsm" Value=".method public static hidebysig bool GetIsVirtualizing(class System.Windows.DependencyObject o) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.GetIsVirtualizing(System.Windows.DependencyObject)" />
<MemberSignature Language="VB.NET" Value="Public Shared Function GetIsVirtualizing (o As DependencyObject) As Boolean" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; static bool GetIsVirtualizing(System::Windows::DependencyObject ^ o);" />
<MemberSignature Language="F#" Value="static member GetIsVirtualizing : System.Windows.DependencyObject -&gt; bool" Usage="System.Windows.Controls.VirtualizingStackPanel.GetIsVirtualizing o" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="o" Type="System.Windows.DependencyObject" Index="0" FrameworkAlternate="netframework-3.0;netframework-3.5;netframework-4.0" />
</Parameters>
<Docs>
<param name="o">The object from which the attached property value is read.</param>
<summary>Gets the value of the <see cref="P:System.Windows.Controls.VirtualizingStackPanel.IsVirtualizing" /> attached property.</summary>
<returns>
<see langword="true" /> if the <see cref="T:System.Windows.Controls.VirtualizingStackPanel" /> is virtualizing its content; otherwise, <see langword="false" />.</returns>
<returns>
<see langword="true" /> if the element is not on the screen; otherwise, <see langword="false" />.</returns>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
The default value of the <xref:System.Windows.Controls.VirtualizingStackPanel.IsVirtualizing> property is `true`.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="GetItemOffsetCore">
<MemberSignature Language="C#" Value="protected override double GetItemOffsetCore (System.Windows.UIElement child);" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig virtual instance float64 GetItemOffsetCore(class System.Windows.UIElement child) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.GetItemOffsetCore(System.Windows.UIElement)" />
<MemberSignature Language="VB.NET" Value="Protected Overrides Function GetItemOffsetCore (child As UIElement) As Double" />
<MemberSignature Language="C++ CLI" Value="protected:&#xA; override double GetItemOffsetCore(System::Windows::UIElement ^ child);" />
<MemberSignature Language="F#" Value="override this.GetItemOffsetCore : System.Windows.UIElement -&gt; double" Usage="virtualizingStackPanel.GetItemOffsetCore child" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Double</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="child" Type="System.Windows.UIElement" Index="0" FrameworkAlternate="netcore-3.0;netframework-4.5;netframework-4.5.1;netframework-4.5.2;netframework-4.6;netframework-4.6.1;netframework-4.6.2;netframework-4.7;netframework-4.7.1;netframework-4.7.2;netframework-4.8" />
</Parameters>
<Docs>
<param name="child">The element whose position to find.</param>
<summary>Returns the position of the specified item, relative to the <see cref="T:System.Windows.Controls.VirtualizingStackPanel" />.</summary>
<returns>The position of the specified item, relative to the <see cref="T:System.Windows.Controls.VirtualizingStackPanel" />.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="GetVirtualizationMode">
<MemberSignature Language="C#" Value="public static System.Windows.Controls.VirtualizationMode GetVirtualizationMode (System.Windows.DependencyObject element);" />
<MemberSignature Language="ILAsm" Value=".method public static hidebysig valuetype System.Windows.Controls.VirtualizationMode GetVirtualizationMode(class System.Windows.DependencyObject element) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.GetVirtualizationMode(System.Windows.DependencyObject)" />
<MemberSignature Language="VB.NET" Value="Public Shared Function GetVirtualizationMode (element As DependencyObject) As VirtualizationMode" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; static System::Windows::Controls::VirtualizationMode GetVirtualizationMode(System::Windows::DependencyObject ^ element);" />
<MemberSignature Language="F#" Value="static member GetVirtualizationMode : System.Windows.DependencyObject -&gt; System.Windows.Controls.VirtualizationMode" Usage="System.Windows.Controls.VirtualizingStackPanel.GetVirtualizationMode element" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Windows.Controls.VirtualizationMode</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="element" Type="System.Windows.DependencyObject" Index="0" FrameworkAlternate="netframework-3.0;netframework-3.5;netframework-4.0" />
</Parameters>
<Docs>
<param name="element">The object from which the <see cref="P:System.Windows.Controls.VirtualizingStackPanel.VirtualizationMode" /> property is read.</param>
<summary>Returns the <see cref="P:System.Windows.Controls.VirtualizingStackPanel.VirtualizationMode" /> attached property for the specified object.</summary>
<returns>One of the enumeration values that specifies whether the object uses container recycling.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="HasLogicalOrientation">
<MemberSignature Language="C#" Value="protected internal override bool HasLogicalOrientation { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance bool HasLogicalOrientation" />
<MemberSignature Language="DocId" Value="P:System.Windows.Controls.VirtualizingStackPanel.HasLogicalOrientation" />
<MemberSignature Language="VB.NET" Value="Protected Friend Overrides ReadOnly Property HasLogicalOrientation As Boolean" />
<MemberSignature Language="C++ CLI" Value="protected public:&#xA; virtual property bool HasLogicalOrientation { bool get(); };" />
<MemberSignature Language="F#" Value="member this.HasLogicalOrientation : bool" Usage="System.Windows.Controls.VirtualizingStackPanel.HasLogicalOrientation" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets a value that indicates if this <see cref="T:System.Windows.Controls.VirtualizingStackPanel" /> has a vertical or horizontal orientation.</summary>
<value>This property always returns <see langword="true" />.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
This property always returns `true` because a <xref:System.Windows.Controls.VirtualizingStackPanel> must have either a vertical or horizontal orientation.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="HorizontalOffset">
<MemberSignature Language="C#" Value="public double HorizontalOffset { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance float64 HorizontalOffset" />
<MemberSignature Language="DocId" Value="P:System.Windows.Controls.VirtualizingStackPanel.HorizontalOffset" />
<MemberSignature Language="VB.NET" Value="Public ReadOnly Property HorizontalOffset As Double" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; property double HorizontalOffset { double get(); };" />
<MemberSignature Language="F#" Value="member this.HorizontalOffset : double" Usage="System.Windows.Controls.VirtualizingStackPanel.HorizontalOffset" />
<MemberType>Property</MemberType>
<Implements>
<InterfaceMember>P:System.Windows.Controls.Primitives.IScrollInfo.HorizontalOffset</InterfaceMember>
</Implements>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName>System.ComponentModel.DesignerSerializationVisibility(System.ComponentModel.DesignerSerializationVisibility.Hidden)</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Double</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets a value that contains the horizontal offset of the scrolled content.</summary>
<value>
<see cref="T:System.Double" /> that represents the horizontal offset of the scrolled content. The default is 0.0.</value>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="IsVirtualizing">
<MemberSignature Language="C#" Value="see GetIsVirtualizing, and SetIsVirtualizing" />
<MemberSignature Language="ILAsm" Value="see GetIsVirtualizing, and SetIsVirtualizing" />
<MemberSignature Language="DocId" Value="P:System.Windows.Controls.VirtualizingStackPanel.IsVirtualizing" />
<MemberSignature Language="VB.NET" Value="see GetIsVirtualizing, and SetIsVirtualizing" />
<MemberSignature Language="F#" Value="see GetIsVirtualizing, and SetIsVirtualizing" Usage="see GetIsVirtualizing, and SetIsVirtualizing" />
<MemberType>AttachedProperty</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Docs>
<summary>Gets or sets a value that indicates that this <see cref="T:System.Windows.Controls.VirtualizingStackPanel" /> is virtualizing its child collection.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
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.
The <xref:System.Windows.Controls.VirtualizingStackPanel> calculates the number of visible items and works with the <xref:System.Windows.Controls.ItemContainerGenerator> from an <xref:System.Windows.Controls.ItemsControl>
(such as <xref:System.Windows.Controls.ListBox> or <xref:System.Windows.Controls.ListView>) to create UI elements only for visible items.
## Dependency Property Information
|Identifier field|IsVirtualizingProperty|
|Metadata properties set to `true`|None|
## Examples
The following example shows how to bind to an XML data source and virtualize the items displayed in a <xref:System.Windows.Controls.ListBox> element by using XAML.
Notice that the IsVirtualizing attached property is explicitly set to `true`.
```xaml
<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>
```
]]></format>
</remarks>
<related type="Article" href="~/docs/framework/wpf/advanced/attached-properties-overview.md">Attached Properties Overview</related>
</Docs>
</Member>
<Member MemberName="IsVirtualizingProperty">
<MemberSignature Language="C#" Value="public static readonly System.Windows.DependencyProperty IsVirtualizingProperty;" />
<MemberSignature Language="ILAsm" Value=".field public static initonly class System.Windows.DependencyProperty IsVirtualizingProperty" />
<MemberSignature Language="DocId" Value="F:System.Windows.Controls.VirtualizingStackPanel.IsVirtualizingProperty" />
<MemberSignature Language="VB.NET" Value="Public Shared ReadOnly IsVirtualizingProperty As DependencyProperty " />
<MemberSignature Language="C++ CLI" Value="public: static initonly System::Windows::DependencyProperty ^ IsVirtualizingProperty;" />
<MemberSignature Language="F#" Value=" staticval mutable IsVirtualizingProperty : System.Windows.DependencyProperty" Usage="System.Windows.Controls.VirtualizingStackPanel.IsVirtualizingProperty" />
<MemberType>Field</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Windows.DependencyProperty</ReturnType>
</ReturnValue>
<Docs>
<summary>Identifies the <see langword="VirtualizingPanel.IsVirtualizing" /> attached property.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="LineDown">
<MemberSignature Language="C#" Value="public virtual void LineDown ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void LineDown() cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.LineDown" />
<MemberSignature Language="VB.NET" Value="Public Overridable Sub LineDown ()" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; virtual void LineDown();" />
<MemberSignature Language="F#" Value="abstract member LineDown : unit -&gt; unit&#xA;override this.LineDown : unit -&gt; unit" Usage="virtualizingStackPanel.LineDown " />
<MemberType>Method</MemberType>
<Implements>
<InterfaceMember>M:System.Windows.Controls.Primitives.IScrollInfo.LineDown</InterfaceMember>
</Implements>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Scrolls content downward by one logical unit.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
You can override this method in a derived class to change how the stack panel scrolls content downward. For example, you can scroll content down by two units instead of one.
If you require physical scrolling instead of logical scrolling, wrap the <xref:System.Windows.Controls.VirtualizingStackPanel> in a <xref:System.Windows.Controls.ScrollViewer> and set its <xref:System.Windows.Controls.ScrollViewer.CanContentScroll%2A> property to `false`. In this case, the <xref:System.Windows.Controls.ScrollViewer> provides scrolling, and virtualization is disabled.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="LineLeft">
<MemberSignature Language="C#" Value="public virtual void LineLeft ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void LineLeft() cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.LineLeft" />
<MemberSignature Language="VB.NET" Value="Public Overridable Sub LineLeft ()" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; virtual void LineLeft();" />
<MemberSignature Language="F#" Value="abstract member LineLeft : unit -&gt; unit&#xA;override this.LineLeft : unit -&gt; unit" Usage="virtualizingStackPanel.LineLeft " />
<MemberType>Method</MemberType>
<Implements>
<InterfaceMember>M:System.Windows.Controls.Primitives.IScrollInfo.LineLeft</InterfaceMember>
</Implements>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Scrolls content to the left by one logical unit.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
You can override this method in a derived class to change how the stack panel scrolls content downward. For example, you can scroll content down by two units instead of one.
If you require physical scrolling instead of logical scrolling, wrap the <xref:System.Windows.Controls.VirtualizingStackPanel> in a <xref:System.Windows.Controls.ScrollViewer> and set its <xref:System.Windows.Controls.ScrollViewer.CanContentScroll%2A> property to `false`. In this case, the <xref:System.Windows.Controls.ScrollViewer> provides scrolling, and virtualization is disabled.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="LineRight">
<MemberSignature Language="C#" Value="public virtual void LineRight ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void LineRight() cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.LineRight" />
<MemberSignature Language="VB.NET" Value="Public Overridable Sub LineRight ()" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; virtual void LineRight();" />
<MemberSignature Language="F#" Value="abstract member LineRight : unit -&gt; unit&#xA;override this.LineRight : unit -&gt; unit" Usage="virtualizingStackPanel.LineRight " />
<MemberType>Method</MemberType>
<Implements>
<InterfaceMember>M:System.Windows.Controls.Primitives.IScrollInfo.LineRight</InterfaceMember>
</Implements>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Scrolls content to the right by one logical unit.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
You can override this method in a derived class to change how the stack panel scrolls content to the right. For example, you can scroll content right by two units instead of one.
If you require physical scrolling instead of logical scrolling, wrap the <xref:System.Windows.Controls.VirtualizingStackPanel> in a <xref:System.Windows.Controls.ScrollViewer> and set its <xref:System.Windows.Controls.ScrollViewer.CanContentScroll%2A> property to `false`. In this case, the <xref:System.Windows.Controls.ScrollViewer> provides scrolling, and virtualization is disabled.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="LineUp">
<MemberSignature Language="C#" Value="public virtual void LineUp ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void LineUp() cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.LineUp" />
<MemberSignature Language="VB.NET" Value="Public Overridable Sub LineUp ()" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; virtual void LineUp();" />
<MemberSignature Language="F#" Value="abstract member LineUp : unit -&gt; unit&#xA;override this.LineUp : unit -&gt; unit" Usage="virtualizingStackPanel.LineUp " />
<MemberType>Method</MemberType>
<Implements>
<InterfaceMember>M:System.Windows.Controls.Primitives.IScrollInfo.LineUp</InterfaceMember>
</Implements>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Scrolls content upward by one logical unit.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
You can override this method in a derived class to change how the stack panel scrolls content upward. For example, you can scroll up two units instead of one.
If you require physical scrolling instead of logical scrolling, wrap the <xref:System.Windows.Controls.VirtualizingStackPanel> in a <xref:System.Windows.Controls.ScrollViewer> and set its <xref:System.Windows.Controls.ScrollViewer.CanContentScroll%2A> property to `false`. In this case, the <xref:System.Windows.Controls.ScrollViewer> provides scrolling, and virtualization is disabled.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="LogicalOrientation">
<MemberSignature Language="C#" Value="protected internal override System.Windows.Controls.Orientation LogicalOrientation { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance valuetype System.Windows.Controls.Orientation LogicalOrientation" />
<MemberSignature Language="DocId" Value="P:System.Windows.Controls.VirtualizingStackPanel.LogicalOrientation" />
<MemberSignature Language="VB.NET" Value="Protected Friend Overrides ReadOnly Property LogicalOrientation As Orientation" />
<MemberSignature Language="C++ CLI" Value="protected public:&#xA; virtual property System::Windows::Controls::Orientation LogicalOrientation { System::Windows::Controls::Orientation get(); };" />
<MemberSignature Language="F#" Value="member this.LogicalOrientation : System.Windows.Controls.Orientation" Usage="System.Windows.Controls.VirtualizingStackPanel.LogicalOrientation" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute FrameworkAlternate="netframework-4.0">
<AttributeName>get: System.Runtime.TargetedPatchingOptOut("Performance critical to inline this type of method across NGen image boundaries")</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Windows.Controls.Orientation</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets a value that represents the <see cref="T:System.Windows.Controls.Orientation" /> of the <see cref="T:System.Windows.Controls.VirtualizingStackPanel" />.</summary>
<value>An <see cref="T:System.Windows.Controls.Orientation" /> value.</value>
<remarks>To be added.</remarks>
<altmember cref="T:System.Windows.Controls.Orientation" />
</Docs>
</Member>
<Member MemberName="MakeVisible">
<MemberSignature Language="C#" Value="public System.Windows.Rect MakeVisible (System.Windows.Media.Visual visual, System.Windows.Rect rectangle);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance valuetype System.Windows.Rect MakeVisible(class System.Windows.Media.Visual visual, valuetype System.Windows.Rect rectangle) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.MakeVisible(System.Windows.Media.Visual,System.Windows.Rect)" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; virtual System::Windows::Rect MakeVisible(System::Windows::Media::Visual ^ visual, System::Windows::Rect rectangle);" />
<MemberSignature Language="F#" Value="abstract member MakeVisible : System.Windows.Media.Visual * System.Windows.Rect -&gt; System.Windows.Rect&#xA;override this.MakeVisible : System.Windows.Media.Visual * System.Windows.Rect -&gt; System.Windows.Rect" Usage="virtualizingStackPanel.MakeVisible (visual, rectangle)" />
<MemberType>Method</MemberType>
<Implements>
<InterfaceMember>M:System.Windows.Controls.Primitives.IScrollInfo.MakeVisible(System.Windows.Media.Visual,System.Windows.Rect)</InterfaceMember>
</Implements>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Windows.Rect</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="visual" Type="System.Windows.Media.Visual" />
<Parameter Name="rectangle" Type="System.Windows.Rect" />
</Parameters>
<Docs>
<param name="visual">The <see cref="T:System.Windows.Media.Visual" /> that becomes visible.</param>
<param name="rectangle">A <see cref="T:System.Windows.Rect" /> that represents the coordinate space within a <see cref="T:System.Windows.Media.Visual" />.</param>
<summary>Scrolls to the specified coordinates and makes that portion of a <see cref="T:System.Windows.Media.Visual" /> visible.</summary>
<returns>A <see cref="T:System.Windows.Rect" /> that is visible.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="MeasureOverride">
<MemberSignature Language="C#" Value="protected override System.Windows.Size MeasureOverride (System.Windows.Size constraint);" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig virtual instance valuetype System.Windows.Size MeasureOverride(valuetype System.Windows.Size constraint) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.MeasureOverride(System.Windows.Size)" />
<MemberSignature Language="VB.NET" Value="Protected Overrides Function MeasureOverride (constraint As Size) As Size" />
<MemberSignature Language="C++ CLI" Value="protected:&#xA; override System::Windows::Size MeasureOverride(System::Windows::Size constraint);" />
<MemberSignature Language="F#" Value="override this.MeasureOverride : System.Windows.Size -&gt; System.Windows.Size" Usage="virtualizingStackPanel.MeasureOverride constraint" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Windows.Size</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="constraint" Type="System.Windows.Size" />
</Parameters>
<Docs>
<param name="constraint">An upper limit <see cref="T:System.Windows.Size" /> that should not be exceeded.</param>
<summary>Measures the child elements of a <see cref="T:System.Windows.Controls.VirtualizingStackPanel" /> in anticipation of arranging them during the <see cref="M:System.Windows.Controls.VirtualizingStackPanel.ArrangeOverride(System.Windows.Size)" /> pass.</summary>
<returns>The <see cref="T:System.Windows.Size" /> that represents the desired size of the element.</returns>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
When scrolling, <xref:System.Windows.Controls.VirtualizingStackPanel> does not grow in layout size, but effectively adds its descendants on a z-plane, which is normally clipped by a parent element (typically a <xref:System.Windows.Controls.ScrollContentPresenter>) to the size of the stack.
]]></format>
</remarks>
<altmember cref="M:System.Windows.Controls.VirtualizingStackPanel.ArrangeOverride(System.Windows.Size)" />
</Docs>
</Member>
<Member MemberName="MouseWheelDown">
<MemberSignature Language="C#" Value="public virtual void MouseWheelDown ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void MouseWheelDown() cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.MouseWheelDown" />
<MemberSignature Language="VB.NET" Value="Public Overridable Sub MouseWheelDown ()" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; virtual void MouseWheelDown();" />
<MemberSignature Language="F#" Value="abstract member MouseWheelDown : unit -&gt; unit&#xA;override this.MouseWheelDown : unit -&gt; unit" Usage="virtualizingStackPanel.MouseWheelDown " />
<MemberType>Method</MemberType>
<Implements>
<InterfaceMember>M:System.Windows.Controls.Primitives.IScrollInfo.MouseWheelDown</InterfaceMember>
</Implements>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Scrolls content logically downward in response to a downward click of the mouse wheel button.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
You can override <xref:System.Windows.Controls.VirtualizingStackPanel.MouseWheelDown%2A> in a derived class to change how the stack panel responds to the mouse wheel down action.
If you require physical scrolling instead of logical scrolling, wrap the <xref:System.Windows.Controls.VirtualizingStackPanel> in a <xref:System.Windows.Controls.ScrollViewer> and set its <xref:System.Windows.Controls.ScrollViewer.CanContentScroll%2A> property to `false`. In this case, the <xref:System.Windows.Controls.ScrollViewer> provides scrolling, and virtualization is disabled.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="MouseWheelLeft">
<MemberSignature Language="C#" Value="public virtual void MouseWheelLeft ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void MouseWheelLeft() cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.MouseWheelLeft" />
<MemberSignature Language="VB.NET" Value="Public Overridable Sub MouseWheelLeft ()" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; virtual void MouseWheelLeft();" />
<MemberSignature Language="F#" Value="abstract member MouseWheelLeft : unit -&gt; unit&#xA;override this.MouseWheelLeft : unit -&gt; unit" Usage="virtualizingStackPanel.MouseWheelLeft " />
<MemberType>Method</MemberType>
<Implements>
<InterfaceMember>M:System.Windows.Controls.Primitives.IScrollInfo.MouseWheelLeft</InterfaceMember>
</Implements>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Scrolls content logically to the left in response to a left click of the mouse wheel button.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
You can override <xref:System.Windows.Controls.VirtualizingStackPanel.MouseWheelLeft%2A> in a derived class to change how the stack panel responds to the mouse wheel left action.
If you require physical scrolling instead of logical scrolling, wrap the <xref:System.Windows.Controls.VirtualizingStackPanel> in a <xref:System.Windows.Controls.ScrollViewer> and set its <xref:System.Windows.Controls.ScrollViewer.CanContentScroll%2A> property to `false`. In this case, the <xref:System.Windows.Controls.ScrollViewer> provides scrolling, and virtualization is disabled.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="MouseWheelRight">
<MemberSignature Language="C#" Value="public virtual void MouseWheelRight ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void MouseWheelRight() cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.MouseWheelRight" />
<MemberSignature Language="VB.NET" Value="Public Overridable Sub MouseWheelRight ()" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; virtual void MouseWheelRight();" />
<MemberSignature Language="F#" Value="abstract member MouseWheelRight : unit -&gt; unit&#xA;override this.MouseWheelRight : unit -&gt; unit" Usage="virtualizingStackPanel.MouseWheelRight " />
<MemberType>Method</MemberType>
<Implements>
<InterfaceMember>M:System.Windows.Controls.Primitives.IScrollInfo.MouseWheelRight</InterfaceMember>
</Implements>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Scrolls content logically to the right in response to a right click of the mouse wheel button.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
You can override <xref:System.Windows.Controls.VirtualizingStackPanel.MouseWheelRight%2A> in a derived class to change how the stack panel responds to the mouse wheel right action.
If you require physical scrolling instead of logical scrolling, wrap the <xref:System.Windows.Controls.VirtualizingStackPanel> in a <xref:System.Windows.Controls.ScrollViewer> and set its <xref:System.Windows.Controls.ScrollViewer.CanContentScroll%2A> property to `false`. In this case, the <xref:System.Windows.Controls.ScrollViewer> provides scrolling, and virtualization is disabled.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="MouseWheelUp">
<MemberSignature Language="C#" Value="public virtual void MouseWheelUp ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void MouseWheelUp() cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.MouseWheelUp" />
<MemberSignature Language="VB.NET" Value="Public Overridable Sub MouseWheelUp ()" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; virtual void MouseWheelUp();" />
<MemberSignature Language="F#" Value="abstract member MouseWheelUp : unit -&gt; unit&#xA;override this.MouseWheelUp : unit -&gt; unit" Usage="virtualizingStackPanel.MouseWheelUp " />
<MemberType>Method</MemberType>
<Implements>
<InterfaceMember>M:System.Windows.Controls.Primitives.IScrollInfo.MouseWheelUp</InterfaceMember>
</Implements>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Scrolls content logically upward in response to an upward click of the mouse wheel button.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
You can override <xref:System.Windows.Controls.VirtualizingStackPanel.MouseWheelUp%2A> in a derived class to change how the stack panel responds to the mouse wheel up action.
If you require physical scrolling instead of logical scrolling, wrap the <xref:System.Windows.Controls.VirtualizingStackPanel> in a <xref:System.Windows.Controls.ScrollViewer> and set its <xref:System.Windows.Controls.ScrollViewer.CanContentScroll%2A> property to `false`. In this case, the <xref:System.Windows.Controls.ScrollViewer> provides scrolling, and virtualization is disabled.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="OnCleanUpVirtualizedItem">
<MemberSignature Language="C#" Value="protected virtual void OnCleanUpVirtualizedItem (System.Windows.Controls.CleanUpVirtualizedItemEventArgs e);" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig newslot virtual instance void OnCleanUpVirtualizedItem(class System.Windows.Controls.CleanUpVirtualizedItemEventArgs e) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.OnCleanUpVirtualizedItem(System.Windows.Controls.CleanUpVirtualizedItemEventArgs)" />
<MemberSignature Language="VB.NET" Value="Protected Overridable Sub OnCleanUpVirtualizedItem (e As CleanUpVirtualizedItemEventArgs)" />
<MemberSignature Language="C++ CLI" Value="protected:&#xA; virtual void OnCleanUpVirtualizedItem(System::Windows::Controls::CleanUpVirtualizedItemEventArgs ^ e);" />
<MemberSignature Language="F#" Value="abstract member OnCleanUpVirtualizedItem : System.Windows.Controls.CleanUpVirtualizedItemEventArgs -&gt; unit&#xA;override this.OnCleanUpVirtualizedItem : System.Windows.Controls.CleanUpVirtualizedItemEventArgs -&gt; unit" Usage="virtualizingStackPanel.OnCleanUpVirtualizedItem e" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="e" Type="System.Windows.Controls.CleanUpVirtualizedItemEventArgs" />
</Parameters>
<Docs>
<param name="e">Data about the event.</param>
<summary>Called when an item that is hosted by the <see cref="T:System.Windows.Controls.VirtualizingStackPanel" /> is re-virtualized.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
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 [!INCLUDE[TLA2#tla_ui](~/includes/tla2sharptla-ui-md.md)] elements are generated from a larger number of data items based on which items are visible on-screen. Generating many [!INCLUDE[TLA2#tla_ui](~/includes/tla2sharptla-ui-md.md)] elements when only a few elements might be on the screen can adversely affect the performance of your application. The <xref:System.Windows.Controls.VirtualizingStackPanel> calculates the number of visible items and works with the <xref:System.Windows.Controls.ItemContainerGenerator> from an <xref:System.Windows.Controls.ItemsControl> (such as <xref:System.Windows.Controls.ListBox> or <xref:System.Windows.Controls.ListView>) to create [!INCLUDE[TLA2#tla_ui](~/includes/tla2sharptla-ui-md.md)] elements only for visible items.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="OnClearChildren">
<MemberSignature Language="C#" Value="protected override void OnClearChildren ();" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig virtual instance void OnClearChildren() cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.OnClearChildren" />
<MemberSignature Language="VB.NET" Value="Protected Overrides Sub OnClearChildren ()" />
<MemberSignature Language="C++ CLI" Value="protected:&#xA; override void OnClearChildren();" />
<MemberSignature Language="F#" Value="override this.OnClearChildren : unit -&gt; unit" Usage="virtualizingStackPanel.OnClearChildren " />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Called when the collection of child elements is cleared by the base <see cref="T:System.Windows.Controls.Panel" /> class.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="OnGotKeyboardFocus">
<MemberSignature Language="C#" Value="protected override void OnGotKeyboardFocus (System.Windows.Input.KeyboardFocusChangedEventArgs e);" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig virtual instance void OnGotKeyboardFocus(class System.Windows.Input.KeyboardFocusChangedEventArgs e) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.OnGotKeyboardFocus(System.Windows.Input.KeyboardFocusChangedEventArgs)" />
<MemberSignature Language="VB.NET" Value="Protected Overrides Sub OnGotKeyboardFocus (e As KeyboardFocusChangedEventArgs)" />
<MemberSignature Language="C++ CLI" Value="protected:&#xA; override void OnGotKeyboardFocus(System::Windows::Input::KeyboardFocusChangedEventArgs ^ e);" />
<MemberSignature Language="F#" Value="override this.OnGotKeyboardFocus : System.Windows.Input.KeyboardFocusChangedEventArgs -&gt; unit" Usage="virtualizingStackPanel.OnGotKeyboardFocus e" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="e" Type="System.Windows.Input.KeyboardFocusChangedEventArgs" Index="0" FrameworkAlternate="netframework-3.0;netframework-3.5;netframework-4.0" />
</Parameters>
<Docs>
<param name="e">The data for the event.</param>
<summary>Called when a descendent object of the <see cref="T:System.Windows.Controls.VirtualizingStackPanel" /> gets focus.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="OnItemsChanged">
<MemberSignature Language="C#" Value="protected override void OnItemsChanged (object sender, System.Windows.Controls.Primitives.ItemsChangedEventArgs args);" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig virtual instance void OnItemsChanged(object sender, class System.Windows.Controls.Primitives.ItemsChangedEventArgs args) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.OnItemsChanged(System.Object,System.Windows.Controls.Primitives.ItemsChangedEventArgs)" />
<MemberSignature Language="VB.NET" Value="Protected Overrides Sub OnItemsChanged (sender As Object, args As ItemsChangedEventArgs)" />
<MemberSignature Language="C++ CLI" Value="protected:&#xA; override void OnItemsChanged(System::Object ^ sender, System::Windows::Controls::Primitives::ItemsChangedEventArgs ^ args);" />
<MemberSignature Language="F#" Value="override this.OnItemsChanged : obj * System.Windows.Controls.Primitives.ItemsChangedEventArgs -&gt; unit" Usage="virtualizingStackPanel.OnItemsChanged (sender, args)" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="sender" Type="System.Object" />
<Parameter Name="args" Type="System.Windows.Controls.Primitives.ItemsChangedEventArgs" />
</Parameters>
<Docs>
<param name="sender">The <see cref="T:System.Object" /> that raised the event.</param>
<param name="args">Provides data for the <see cref="E:System.Windows.Controls.ItemContainerGenerator.ItemsChanged" /> event.</param>
<summary>Called when the <see cref="P:System.Windows.Controls.ItemsControl.Items" /> collection that is associated with the <see cref="T:System.Windows.Controls.ItemsControl" /> for this <see cref="T:System.Windows.Controls.Panel" /> changes.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="OnLostKeyboardFocus">
<MemberSignature Language="C#" Value="protected override void OnLostKeyboardFocus (System.Windows.Input.KeyboardFocusChangedEventArgs e);" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig virtual instance void OnLostKeyboardFocus(class System.Windows.Input.KeyboardFocusChangedEventArgs e) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.OnLostKeyboardFocus(System.Windows.Input.KeyboardFocusChangedEventArgs)" />
<MemberSignature Language="VB.NET" Value="Protected Overrides Sub OnLostKeyboardFocus (e As KeyboardFocusChangedEventArgs)" />
<MemberSignature Language="C++ CLI" Value="protected:&#xA; override void OnLostKeyboardFocus(System::Windows::Input::KeyboardFocusChangedEventArgs ^ e);" />
<MemberSignature Language="F#" Value="override this.OnLostKeyboardFocus : System.Windows.Input.KeyboardFocusChangedEventArgs -&gt; unit" Usage="virtualizingStackPanel.OnLostKeyboardFocus e" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="e" Type="System.Windows.Input.KeyboardFocusChangedEventArgs" Index="0" FrameworkAlternate="netframework-3.0;netframework-3.5;netframework-4.0" />
</Parameters>
<Docs>
<param name="e">The data for the event.</param>
<summary>Called when the <see cref="T:System.Windows.Controls.VirtualizingStackPanel" /> or any of its descendent objects lose keyboard focus.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="OnViewportOffsetChanged">
<MemberSignature Language="C#" Value="protected virtual void OnViewportOffsetChanged (System.Windows.Vector oldViewportOffset, System.Windows.Vector newViewportOffset);" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig newslot virtual instance void OnViewportOffsetChanged(valuetype System.Windows.Vector oldViewportOffset, valuetype System.Windows.Vector newViewportOffset) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.OnViewportOffsetChanged(System.Windows.Vector,System.Windows.Vector)" />
<MemberSignature Language="VB.NET" Value="Protected Overridable Sub OnViewportOffsetChanged (oldViewportOffset As Vector, newViewportOffset As Vector)" />
<MemberSignature Language="C++ CLI" Value="protected:&#xA; virtual void OnViewportOffsetChanged(System::Windows::Vector oldViewportOffset, System::Windows::Vector newViewportOffset);" />
<MemberSignature Language="F#" Value="abstract member OnViewportOffsetChanged : System.Windows.Vector * System.Windows.Vector -&gt; unit&#xA;override this.OnViewportOffsetChanged : System.Windows.Vector * System.Windows.Vector -&gt; unit" Usage="virtualizingStackPanel.OnViewportOffsetChanged (oldViewportOffset, newViewportOffset)" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="oldViewportOffset" Type="System.Windows.Vector" />
<Parameter Name="newViewportOffset" Type="System.Windows.Vector" />
</Parameters>
<Docs>
<param name="oldViewportOffset">The old offset of the viewport.</param>
<param name="newViewportOffset">The new offset of the viewport</param>
<summary>Called when the offset of the viewport changes as a user scrolls through content.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
Use this method, in a derived class, to detect and respond to changes in the viewport location.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="OnViewportSizeChanged">
<MemberSignature Language="C#" Value="protected virtual void OnViewportSizeChanged (System.Windows.Size oldViewportSize, System.Windows.Size newViewportSize);" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig newslot virtual instance void OnViewportSizeChanged(valuetype System.Windows.Size oldViewportSize, valuetype System.Windows.Size newViewportSize) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.OnViewportSizeChanged(System.Windows.Size,System.Windows.Size)" />
<MemberSignature Language="VB.NET" Value="Protected Overridable Sub OnViewportSizeChanged (oldViewportSize As Size, newViewportSize As Size)" />
<MemberSignature Language="C++ CLI" Value="protected:&#xA; virtual void OnViewportSizeChanged(System::Windows::Size oldViewportSize, System::Windows::Size newViewportSize);" />
<MemberSignature Language="F#" Value="abstract member OnViewportSizeChanged : System.Windows.Size * System.Windows.Size -&gt; unit&#xA;override this.OnViewportSizeChanged : System.Windows.Size * System.Windows.Size -&gt; unit" Usage="virtualizingStackPanel.OnViewportSizeChanged (oldViewportSize, newViewportSize)" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="oldViewportSize" Type="System.Windows.Size" />
<Parameter Name="newViewportSize" Type="System.Windows.Size" />
</Parameters>
<Docs>
<param name="oldViewportSize">The old size of the viewport.</param>
<param name="newViewportSize">The new size of the viewport.</param>
<summary>Called when the size of the viewport changes.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
Use this method, in a derived class, to detect and respond to changes in the viewport size.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="Orientation">
<MemberSignature Language="C#" Value="public System.Windows.Controls.Orientation Orientation { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance valuetype System.Windows.Controls.Orientation Orientation" />
<MemberSignature Language="DocId" Value="P:System.Windows.Controls.VirtualizingStackPanel.Orientation" />
<MemberSignature Language="VB.NET" Value="Public Property Orientation As Orientation" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; property System::Windows::Controls::Orientation Orientation { System::Windows::Controls::Orientation get(); void set(System::Windows::Controls::Orientation value); };" />
<MemberSignature Language="F#" Value="member this.Orientation : System.Windows.Controls.Orientation with get, set" Usage="System.Windows.Controls.VirtualizingStackPanel.Orientation" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Windows.Controls.Orientation</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets or sets a value that describes the horizontal or vertical orientation of stacked content.</summary>
<value>The <see cref="T:System.Windows.Controls.Orientation" /> of child content. The default is <see cref="F:System.Windows.Controls.Orientation.Vertical" />.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
<a name="dependencyPropertyInfo_Orientation"></a>
## Dependency Property Information
|||
|-|-|
|Identifier field|<xref:System.Windows.Controls.VirtualizingStackPanel.OrientationProperty>|
|Metadata properties set to `true`|<xref:System.Windows.FrameworkPropertyMetadata.AffectsMeasure%2A>|
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="OrientationProperty">
<MemberSignature Language="C#" Value="public static readonly System.Windows.DependencyProperty OrientationProperty;" />
<MemberSignature Language="ILAsm" Value=".field public static initonly class System.Windows.DependencyProperty OrientationProperty" />
<MemberSignature Language="DocId" Value="F:System.Windows.Controls.VirtualizingStackPanel.OrientationProperty" />
<MemberSignature Language="VB.NET" Value="Public Shared ReadOnly OrientationProperty As DependencyProperty " />
<MemberSignature Language="C++ CLI" Value="public: static initonly System::Windows::DependencyProperty ^ OrientationProperty;" />
<MemberSignature Language="F#" Value=" staticval mutable OrientationProperty : System.Windows.DependencyProperty" Usage="System.Windows.Controls.VirtualizingStackPanel.OrientationProperty" />
<MemberType>Field</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Windows.DependencyProperty</ReturnType>
</ReturnValue>
<Docs>
<summary>Identifies the <see cref="P:System.Windows.Controls.VirtualizingStackPanel.Orientation" /> dependency property.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="PageDown">
<MemberSignature Language="C#" Value="public virtual void PageDown ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void PageDown() cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.PageDown" />
<MemberSignature Language="VB.NET" Value="Public Overridable Sub PageDown ()" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; virtual void PageDown();" />
<MemberSignature Language="F#" Value="abstract member PageDown : unit -&gt; unit&#xA;override this.PageDown : unit -&gt; unit" Usage="virtualizingStackPanel.PageDown " />
<MemberType>Method</MemberType>
<Implements>
<InterfaceMember>M:System.Windows.Controls.Primitives.IScrollInfo.PageDown</InterfaceMember>
</Implements>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Scrolls content downward by one page.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
You can override <xref:System.Windows.Controls.VirtualizingStackPanel.PageDown%2A> in a derived class to change how the stack panel responds to the page down action.
If you require physical scrolling instead of logical scrolling, wrap the <xref:System.Windows.Controls.VirtualizingStackPanel> in a <xref:System.Windows.Controls.ScrollViewer> and set its <xref:System.Windows.Controls.ScrollViewer.CanContentScroll%2A> property to `false`. In this case, the <xref:System.Windows.Controls.ScrollViewer> provides scrolling, and virtualization is disabled.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="PageLeft">
<MemberSignature Language="C#" Value="public virtual void PageLeft ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void PageLeft() cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.PageLeft" />
<MemberSignature Language="VB.NET" Value="Public Overridable Sub PageLeft ()" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; virtual void PageLeft();" />
<MemberSignature Language="F#" Value="abstract member PageLeft : unit -&gt; unit&#xA;override this.PageLeft : unit -&gt; unit" Usage="virtualizingStackPanel.PageLeft " />
<MemberType>Method</MemberType>
<Implements>
<InterfaceMember>M:System.Windows.Controls.Primitives.IScrollInfo.PageLeft</InterfaceMember>
</Implements>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Scrolls content to the left by one page.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
You can override <xref:System.Windows.Controls.VirtualizingStackPanel.PageLeft%2A> in a derived class to change how the stack panel responds to the page left action.
If you require physical scrolling instead of logical scrolling, wrap the <xref:System.Windows.Controls.VirtualizingStackPanel> in a <xref:System.Windows.Controls.ScrollViewer> and set its <xref:System.Windows.Controls.ScrollViewer.CanContentScroll%2A> property to `false`. In this case, the <xref:System.Windows.Controls.ScrollViewer> provides scrolling, and virtualization is disabled.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="PageRight">
<MemberSignature Language="C#" Value="public virtual void PageRight ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void PageRight() cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.PageRight" />
<MemberSignature Language="VB.NET" Value="Public Overridable Sub PageRight ()" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; virtual void PageRight();" />
<MemberSignature Language="F#" Value="abstract member PageRight : unit -&gt; unit&#xA;override this.PageRight : unit -&gt; unit" Usage="virtualizingStackPanel.PageRight " />
<MemberType>Method</MemberType>
<Implements>
<InterfaceMember>M:System.Windows.Controls.Primitives.IScrollInfo.PageRight</InterfaceMember>
</Implements>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Scrolls content to the right by one page.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
You can override <xref:System.Windows.Controls.VirtualizingStackPanel.PageRight%2A> in a derived class to change how the stack panel responds to the page right action.
If you require physical scrolling instead of logical scrolling, wrap the <xref:System.Windows.Controls.VirtualizingStackPanel> in a <xref:System.Windows.Controls.ScrollViewer> and set its <xref:System.Windows.Controls.ScrollViewer.CanContentScroll%2A> property to `false`. In this case, the <xref:System.Windows.Controls.ScrollViewer> provides scrolling, and virtualization is disabled.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="PageUp">
<MemberSignature Language="C#" Value="public virtual void PageUp ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void PageUp() cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.PageUp" />
<MemberSignature Language="VB.NET" Value="Public Overridable Sub PageUp ()" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; virtual void PageUp();" />
<MemberSignature Language="F#" Value="abstract member PageUp : unit -&gt; unit&#xA;override this.PageUp : unit -&gt; unit" Usage="virtualizingStackPanel.PageUp " />
<MemberType>Method</MemberType>
<Implements>
<InterfaceMember>M:System.Windows.Controls.Primitives.IScrollInfo.PageUp</InterfaceMember>
</Implements>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters />
<Docs>
<summary>Scrolls content upward by one page.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
You can override <xref:System.Windows.Controls.VirtualizingStackPanel.PageUp%2A> in a derived class to change how the stack panel responds to the page up action.
If you require physical scrolling instead of logical scrolling, wrap the <xref:System.Windows.Controls.VirtualizingStackPanel> in a <xref:System.Windows.Controls.ScrollViewer> and set its <xref:System.Windows.Controls.ScrollViewer.CanContentScroll%2A> property to `false`. In this case, the <xref:System.Windows.Controls.ScrollViewer> provides scrolling, and virtualization is disabled.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="RemoveCleanUpVirtualizedItemHandler">
<MemberSignature Language="C#" Value="public static void RemoveCleanUpVirtualizedItemHandler (System.Windows.DependencyObject element, System.Windows.Controls.CleanUpVirtualizedItemEventHandler handler);" />
<MemberSignature Language="ILAsm" Value=".method public static hidebysig void RemoveCleanUpVirtualizedItemHandler(class System.Windows.DependencyObject element, class System.Windows.Controls.CleanUpVirtualizedItemEventHandler handler) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.RemoveCleanUpVirtualizedItemHandler(System.Windows.DependencyObject,System.Windows.Controls.CleanUpVirtualizedItemEventHandler)" />
<MemberSignature Language="VB.NET" Value="Public Shared Sub RemoveCleanUpVirtualizedItemHandler (element As DependencyObject, handler As CleanUpVirtualizedItemEventHandler)" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; static void RemoveCleanUpVirtualizedItemHandler(System::Windows::DependencyObject ^ element, System::Windows::Controls::CleanUpVirtualizedItemEventHandler ^ handler);" />
<MemberSignature Language="F#" Value="static member RemoveCleanUpVirtualizedItemHandler : System.Windows.DependencyObject * System.Windows.Controls.CleanUpVirtualizedItemEventHandler -&gt; unit" Usage="System.Windows.Controls.VirtualizingStackPanel.RemoveCleanUpVirtualizedItemHandler (element, handler)" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="element" Type="System.Windows.DependencyObject" />
<Parameter Name="handler" Type="System.Windows.Controls.CleanUpVirtualizedItemEventHandler" />
</Parameters>
<Docs>
<param name="element">The <see cref="T:System.Windows.DependencyObject" /> from which the handler is being removed.</param>
<param name="handler">Specifies the event handler that is to be removed.</param>
<summary>Removes an event handler for the <see cref="E:System.Windows.Controls.VirtualizingStackPanel.CleanUpVirtualizedItem" /> attached event.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
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 [!INCLUDE[TLA2#tla_ui](~/includes/tla2sharptla-ui-md.md)] elements are generated from a larger number of data items based on which items are visible on-screen. Generating many [!INCLUDE[TLA2#tla_ui](~/includes/tla2sharptla-ui-md.md)] elements when only a few elements might be on the screen can adversely affect the performance of your application. The <xref:System.Windows.Controls.VirtualizingStackPanel> calculates the number of visible items and works with the <xref:System.Windows.Controls.ItemContainerGenerator> from an <xref:System.Windows.Controls.ItemsControl> (such as <xref:System.Windows.Controls.ListBox> or <xref:System.Windows.Controls.ListView>) to create [!INCLUDE[TLA2#tla_ui](~/includes/tla2sharptla-ui-md.md)] elements only for visible items.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="ScrollOwner">
<MemberSignature Language="C#" Value="public System.Windows.Controls.ScrollViewer ScrollOwner { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance class System.Windows.Controls.ScrollViewer ScrollOwner" />
<MemberSignature Language="DocId" Value="P:System.Windows.Controls.VirtualizingStackPanel.ScrollOwner" />
<MemberSignature Language="VB.NET" Value="Public Property ScrollOwner As ScrollViewer" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; property System::Windows::Controls::ScrollViewer ^ ScrollOwner { System::Windows::Controls::ScrollViewer ^ get(); void set(System::Windows::Controls::ScrollViewer ^ value); };" />
<MemberSignature Language="F#" Value="member this.ScrollOwner : System.Windows.Controls.ScrollViewer with get, set" Usage="System.Windows.Controls.VirtualizingStackPanel.ScrollOwner" />
<MemberType>Property</MemberType>
<Implements>
<InterfaceMember>P:System.Windows.Controls.Primitives.IScrollInfo.ScrollOwner</InterfaceMember>
</Implements>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName>System.ComponentModel.DesignerSerializationVisibility(System.ComponentModel.DesignerSerializationVisibility.Hidden)</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Windows.Controls.ScrollViewer</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets or sets a value that identifies the container that controls scrolling behavior in this <see cref="T:System.Windows.Controls.VirtualizingStackPanel" />.</summary>
<value>The <see cref="T:System.Windows.Controls.ScrollViewer" /> that owns scrolling for this <see cref="T:System.Windows.Controls.VirtualizingStackPanel" />.</value>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
If a <xref:System.Windows.Controls.ScrollViewer> control is the <xref:System.Windows.Controls.VirtualizingStackPanel.ScrollOwner%2A>, physical scrolling is enabled. If a <xref:System.Windows.Controls.VirtualizingStackPanel> is the <xref:System.Windows.Controls.VirtualizingStackPanel.ScrollOwner%2A>, scrolling is logical by child element.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="SetHorizontalOffset">
<MemberSignature Language="C#" Value="public void SetHorizontalOffset (double offset);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void SetHorizontalOffset(float64 offset) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.SetHorizontalOffset(System.Double)" />
<MemberSignature Language="VB.NET" Value="Public Sub SetHorizontalOffset (offset As Double)" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; virtual void SetHorizontalOffset(double offset);" />
<MemberSignature Language="F#" Value="abstract member SetHorizontalOffset : double -&gt; unit&#xA;override this.SetHorizontalOffset : double -&gt; unit" Usage="virtualizingStackPanel.SetHorizontalOffset offset" />
<MemberType>Method</MemberType>
<Implements>
<InterfaceMember>M:System.Windows.Controls.Primitives.IScrollInfo.SetHorizontalOffset(System.Double)</InterfaceMember>
</Implements>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="offset" Type="System.Double" />
</Parameters>
<Docs>
<param name="offset">The value of the <see cref="P:System.Windows.Controls.VirtualizingStackPanel.HorizontalOffset" /> property.</param>
<summary>Sets the value of the <see cref="P:System.Windows.Controls.VirtualizingStackPanel.HorizontalOffset" /> property.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="SetIsVirtualizing">
<MemberSignature Language="C#" Value="public static void SetIsVirtualizing (System.Windows.DependencyObject element, bool value);" />
<MemberSignature Language="ILAsm" Value=".method public static hidebysig void SetIsVirtualizing(class System.Windows.DependencyObject element, bool value) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.SetIsVirtualizing(System.Windows.DependencyObject,System.Boolean)" />
<MemberSignature Language="VB.NET" Value="Public Shared Sub SetIsVirtualizing (element As DependencyObject, value As Boolean)" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; static void SetIsVirtualizing(System::Windows::DependencyObject ^ element, bool value);" />
<MemberSignature Language="F#" Value="static member SetIsVirtualizing : System.Windows.DependencyObject * bool -&gt; unit" Usage="System.Windows.Controls.VirtualizingStackPanel.SetIsVirtualizing (element, value)" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="element" Type="System.Windows.DependencyObject" Index="0" FrameworkAlternate="netframework-3.0;netframework-3.5;netframework-4.0" />
<Parameter Name="value" Type="System.Boolean" Index="1" FrameworkAlternate="netframework-3.0;netframework-3.5;netframework-4.0" />
</Parameters>
<Docs>
<param name="element">The object to which the attached property value is set.</param>
<param name="value">
<see langword="true" /> if the <see cref="T:System.Windows.Controls.VirtualizingStackPanel" /> is virtualizing; otherwise, <see langword="false" />.</param>
<summary>Sets the value of the <see cref="F:System.Windows.Controls.VirtualizingStackPanel.IsVirtualizingProperty" /> attached property.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
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.
The <xref:System.Windows.Controls.VirtualizingStackPanel> calculates the number of visible items and works with the <xref:System.Windows.Controls.ItemContainerGenerator> from an ItemsControl
(such as <xref:System.Windows.Controls.ListBox> or <xref:System.Windows.Controls.ListView>) to create UI elements only for visible items.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="SetVerticalOffset">
<MemberSignature Language="C#" Value="public void SetVerticalOffset (double offset);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig newslot virtual instance void SetVerticalOffset(float64 offset) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.SetVerticalOffset(System.Double)" />
<MemberSignature Language="VB.NET" Value="Public Sub SetVerticalOffset (offset As Double)" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; virtual void SetVerticalOffset(double offset);" />
<MemberSignature Language="F#" Value="abstract member SetVerticalOffset : double -&gt; unit&#xA;override this.SetVerticalOffset : double -&gt; unit" Usage="virtualizingStackPanel.SetVerticalOffset offset" />
<MemberType>Method</MemberType>
<Implements>
<InterfaceMember>M:System.Windows.Controls.Primitives.IScrollInfo.SetVerticalOffset(System.Double)</InterfaceMember>
</Implements>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="offset" Type="System.Double" />
</Parameters>
<Docs>
<param name="offset">The value of the <see cref="P:System.Windows.Controls.VirtualizingStackPanel.VerticalOffset" /> property.</param>
<summary>Sets the value of the <see cref="P:System.Windows.Controls.VirtualizingStackPanel.VerticalOffset" /> property.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="SetVirtualizationMode">
<MemberSignature Language="C#" Value="public static void SetVirtualizationMode (System.Windows.DependencyObject element, System.Windows.Controls.VirtualizationMode value);" />
<MemberSignature Language="ILAsm" Value=".method public static hidebysig void SetVirtualizationMode(class System.Windows.DependencyObject element, valuetype System.Windows.Controls.VirtualizationMode value) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.SetVirtualizationMode(System.Windows.DependencyObject,System.Windows.Controls.VirtualizationMode)" />
<MemberSignature Language="VB.NET" Value="Public Shared Sub SetVirtualizationMode (element As DependencyObject, value As VirtualizationMode)" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; static void SetVirtualizationMode(System::Windows::DependencyObject ^ element, System::Windows::Controls::VirtualizationMode value);" />
<MemberSignature Language="F#" Value="static member SetVirtualizationMode : System.Windows.DependencyObject * System.Windows.Controls.VirtualizationMode -&gt; unit" Usage="System.Windows.Controls.VirtualizingStackPanel.SetVirtualizationMode (element, value)" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="element" Type="System.Windows.DependencyObject" Index="0" FrameworkAlternate="netframework-3.0;netframework-3.5;netframework-4.0" />
<Parameter Name="value" Type="System.Windows.Controls.VirtualizationMode" Index="1" FrameworkAlternate="netframework-3.0;netframework-3.5;netframework-4.0" />
</Parameters>
<Docs>
<param name="element">The element on which to set the <see cref="P:System.Windows.Controls.VirtualizingStackPanel.VirtualizationMode" /> property.</param>
<param name="value">One of the enumeration values that specifies whether <paramref name="element" /> uses container recycling.</param>
<summary>Sets the <see cref="P:System.Windows.Controls.VirtualizingStackPanel.VirtualizationMode" /> attached property on the specified object.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
For more information about the <xref:System.Windows.Controls.VirtualizingStackPanel.VirtualizationMode> property, see the <xref:System.Windows.Controls.VirtualizingStackPanel> class.
]]></format>
</remarks>
</Docs>
</Member>
<Member MemberName="ShouldItemsChangeAffectLayoutCore">
<MemberSignature Language="C#" Value="protected override bool ShouldItemsChangeAffectLayoutCore (bool areItemChangesLocal, System.Windows.Controls.Primitives.ItemsChangedEventArgs args);" />
<MemberSignature Language="ILAsm" Value=".method familyhidebysig virtual instance bool ShouldItemsChangeAffectLayoutCore(bool areItemChangesLocal, class System.Windows.Controls.Primitives.ItemsChangedEventArgs args) cil managed" />
<MemberSignature Language="DocId" Value="M:System.Windows.Controls.VirtualizingStackPanel.ShouldItemsChangeAffectLayoutCore(System.Boolean,System.Windows.Controls.Primitives.ItemsChangedEventArgs)" />
<MemberSignature Language="VB.NET" Value="Protected Overrides Function ShouldItemsChangeAffectLayoutCore (areItemChangesLocal As Boolean, args As ItemsChangedEventArgs) As Boolean" />
<MemberSignature Language="C++ CLI" Value="protected:&#xA; override bool ShouldItemsChangeAffectLayoutCore(bool areItemChangesLocal, System::Windows::Controls::Primitives::ItemsChangedEventArgs ^ args);" />
<MemberSignature Language="F#" Value="override this.ShouldItemsChangeAffectLayoutCore : bool * System.Windows.Controls.Primitives.ItemsChangedEventArgs -&gt; bool" Usage="virtualizingStackPanel.ShouldItemsChangeAffectLayoutCore (areItemChangesLocal, args)" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Boolean</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="areItemChangesLocal" Type="System.Boolean" Index="0" FrameworkAlternate="netcore-3.0;netframework-4.5;netframework-4.5.1;netframework-4.5.2;netframework-4.6;netframework-4.6.1;netframework-4.6.2;netframework-4.7;netframework-4.7.1;netframework-4.7.2;netframework-4.8" />
<Parameter Name="args" Type="System.Windows.Controls.Primitives.ItemsChangedEventArgs" Index="1" FrameworkAlternate="netcore-3.0;netframework-4.5;netframework-4.5.1;netframework-4.5.2;netframework-4.6;netframework-4.6.1;netframework-4.6.2;netframework-4.7;netframework-4.7.1;netframework-4.7.2;netframework-4.8" />
</Parameters>
<Docs>
<param name="areItemChangesLocal">
<see langword="true" /> if the changed item is a direct child of this <see cref="T:System.Windows.Controls.VirtualizingPanel" />; <see langword="false" /> if the changed item is an indirect descendant of the <see cref="T:System.Windows.Controls.VirtualizingPanel" />.</param>
<param name="args">Contains data regarding the changed item.</param>
<summary>Returns a value that indicates whether a changed item in an <see cref="T:System.Windows.Controls.ItemsControl" /> affects the layout for this panel.</summary>
<returns>
<see langword="true" /> if the changed item in an <see cref="T:System.Windows.Controls.ItemsControl" /> affects the layout for this panel; otherwise, <see langword="false" />.</returns>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="VerticalOffset">
<MemberSignature Language="C#" Value="public double VerticalOffset { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance float64 VerticalOffset" />
<MemberSignature Language="DocId" Value="P:System.Windows.Controls.VirtualizingStackPanel.VerticalOffset" />
<MemberSignature Language="VB.NET" Value="Public ReadOnly Property VerticalOffset As Double" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; property double VerticalOffset { double get(); };" />
<MemberSignature Language="F#" Value="member this.VerticalOffset : double" Usage="System.Windows.Controls.VirtualizingStackPanel.VerticalOffset" />
<MemberType>Property</MemberType>
<Implements>
<InterfaceMember>P:System.Windows.Controls.Primitives.IScrollInfo.VerticalOffset</InterfaceMember>
</Implements>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName>System.ComponentModel.DesignerSerializationVisibility(System.ComponentModel.DesignerSerializationVisibility.Hidden)</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Double</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets a value that contains the vertical offset of the scrolled content.</summary>
<value>A <see cref="T:System.Double" /> that represents the vertical offset of the scrolled content. The default is 0.0.</value>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="ViewportHeight">
<MemberSignature Language="C#" Value="public double ViewportHeight { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance float64 ViewportHeight" />
<MemberSignature Language="DocId" Value="P:System.Windows.Controls.VirtualizingStackPanel.ViewportHeight" />
<MemberSignature Language="VB.NET" Value="Public ReadOnly Property ViewportHeight As Double" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; property double ViewportHeight { double get(); };" />
<MemberSignature Language="F#" Value="member this.ViewportHeight : double" Usage="System.Windows.Controls.VirtualizingStackPanel.ViewportHeight" />
<MemberType>Property</MemberType>
<Implements>
<InterfaceMember>P:System.Windows.Controls.Primitives.IScrollInfo.ViewportHeight</InterfaceMember>
</Implements>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Double</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets a value that contains the vertical size of the viewport of the content.</summary>
<value>A <see cref="T:System.Double" /> that represents the vertical size of the viewport of the content. The default is 0.0.</value>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="ViewportWidth">
<MemberSignature Language="C#" Value="public double ViewportWidth { get; }" />
<MemberSignature Language="ILAsm" Value=".property instance float64 ViewportWidth" />
<MemberSignature Language="DocId" Value="P:System.Windows.Controls.VirtualizingStackPanel.ViewportWidth" />
<MemberSignature Language="VB.NET" Value="Public ReadOnly Property ViewportWidth As Double" />
<MemberSignature Language="C++ CLI" Value="public:&#xA; property double ViewportWidth { double get(); };" />
<MemberSignature Language="F#" Value="member this.ViewportWidth : double" Usage="System.Windows.Controls.VirtualizingStackPanel.ViewportWidth" />
<MemberType>Property</MemberType>
<Implements>
<InterfaceMember>P:System.Windows.Controls.Primitives.IScrollInfo.ViewportWidth</InterfaceMember>
</Implements>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Double</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets a value that contains the horizontal size of the viewport of the content.</summary>
<value>A <see cref="T:System.Double" /> that represents the vertical size of the viewport of the content. The default is 0.0.</value>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="VirtualizationMode">
<MemberSignature Language="C#" Value="see GetVirtualizationMode, and SetVirtualizationMode" />
<MemberSignature Language="ILAsm" Value="see GetVirtualizationMode, and SetVirtualizationMode" />
<MemberSignature Language="DocId" Value="P:System.Windows.Controls.VirtualizingStackPanel.VirtualizationMode" />
<MemberSignature Language="VB.NET" Value="see GetVirtualizationMode, and SetVirtualizationMode" />
<MemberSignature Language="F#" Value="see GetVirtualizationMode, and SetVirtualizationMode" Usage="see GetVirtualizationMode, and SetVirtualizationMode" />
<MemberType>AttachedProperty</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Docs>
<summary>Gets or sets how a panel in an <see cref="T:System.Windows.Controls.ItemsControl" /> virtualizes its child items.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="VirtualizationModeProperty">
<MemberSignature Language="C#" Value="public static readonly System.Windows.DependencyProperty VirtualizationModeProperty;" />
<MemberSignature Language="ILAsm" Value=".field public static initonly class System.Windows.DependencyProperty VirtualizationModeProperty" />
<MemberSignature Language="DocId" Value="F:System.Windows.Controls.VirtualizingStackPanel.VirtualizationModeProperty" />
<MemberSignature Language="VB.NET" Value="Public Shared ReadOnly VirtualizationModeProperty As DependencyProperty " />
<MemberSignature Language="C++ CLI" Value="public: static initonly System::Windows::DependencyProperty ^ VirtualizationModeProperty;" />
<MemberSignature Language="F#" Value=" staticval mutable VirtualizationModeProperty : System.Windows.DependencyProperty" Usage="System.Windows.Controls.VirtualizingStackPanel.VirtualizationModeProperty" />
<MemberType>Field</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Windows.DependencyProperty</ReturnType>
</ReturnValue>
<Docs>
<summary>Identifies the <see cref="P:System.Windows.Controls.VirtualizingStackPanel.VirtualizationMode" /> attached property.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
</Members>
</Type>
You can’t perform that action at this time.