-
Notifications
You must be signed in to change notification settings - Fork 1.5k
/
VirtualizationMode.xml
105 lines (94 loc) · 6.13 KB
/
VirtualizationMode.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
<Type Name="VirtualizationMode" FullName="System.Windows.Controls.VirtualizationMode">
<TypeSignature Language="C#" Value="public enum VirtualizationMode" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi sealed VirtualizationMode extends System.Enum" />
<TypeSignature Language="DocId" Value="T:System.Windows.Controls.VirtualizationMode" />
<TypeSignature Language="VB.NET" Value="Public Enum VirtualizationMode" />
<TypeSignature Language="F#" Value="type VirtualizationMode = " />
<TypeSignature Language="C++ CLI" Value="public enum class VirtualizationMode" />
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>5.0.0.0</AssemblyVersion>
<AssemblyVersion>6.0.0.0</AssemblyVersion>
<AssemblyVersion>7.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.Enum</BaseTypeName>
</Base>
<Docs>
<summary>Specifies the method the <see cref="T:System.Windows.Controls.VirtualizingStackPanel" /> uses to manage virtualizing its child items.</summary>
<remarks>
<format type="text/markdown"><![CDATA[
## Remarks
By default, a <xref:System.Windows.Controls.VirtualizingStackPanel> creates an item container for each visible item and discards it when it is no longer needed (such as when the item is scrolled out of view). When an <xref:System.Windows.Controls.ItemsControl> contains a many items, the process of creating and discarding item containers can negatively affect performance. When <xref:System.Windows.Controls.VirtualizingPanel.VirtualizationMode%2A> is set to Recycling, the <xref:System.Windows.Controls.VirtualizingStackPanel> reuses item containers instead of creating a new one each time.
When <xref:System.Windows.Controls.VirtualizingStackPanel> cannot recycle item containers, it uses the standard mode of virtualization, which is to create and discard item containers for each item. The following list describes cases when the <xref:System.Windows.Controls.VirtualizingStackPanel> cannot recycle item containers:
- The <xref:System.Windows.Controls.ItemsControl> contains item containers of different types. For example, a <xref:System.Windows.Controls.Menu> might have items that use both <xref:System.Windows.Controls.MenuItem> and <xref:System.Windows.Controls.Separator> objects as the item containers.
- You explicitly create the item containers for the <xref:System.Windows.Controls.ItemsControl>.
## Examples
The following example creates a <xref:System.Windows.Controls.ListBox> and sets the <xref:System.Windows.Controls.VirtualizingPanel.VirtualizationMode%2A> attached property to Recycling.
:::code language="xaml" source="~/snippets/csharp/System.Windows/HierarchicalDataTemplate/ItemContainerStyle/Window1.xaml" id="Snippetvirtualizationmode":::
The following example shows the data used in the previous example.
:::code language="csharp" source="~/snippets/csharp/System.Windows/HierarchicalDataTemplate/ItemContainerStyle/Window1.xaml.cs" id="Snippetlistboxdata":::
:::code language="vb" source="~/snippets/visualbasic/VS_Snippets_Wpf/RecycleItemContainerShippets/visualbasic/window1.xaml.vb" id="Snippetlistboxdata":::
]]></format>
</remarks>
<altmember cref="P:System.Windows.Controls.VirtualizingPanel.VirtualizationMode" />
</Docs>
<Members>
<Member MemberName="Recycling">
<MemberSignature Language="C#" Value="Recycling" />
<MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Windows.Controls.VirtualizationMode Recycling = int32(1)" />
<MemberSignature Language="DocId" Value="F:System.Windows.Controls.VirtualizationMode.Recycling" />
<MemberSignature Language="VB.NET" Value="Recycling" />
<MemberSignature Language="F#" Value="Recycling = 1" Usage="System.Windows.Controls.VirtualizationMode.Recycling" />
<MemberSignature Language="C++ CLI" Value="Recycling" />
<MemberType>Field</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>5.0.0.0</AssemblyVersion>
<AssemblyVersion>6.0.0.0</AssemblyVersion>
<AssemblyVersion>7.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Windows.Controls.VirtualizationMode</ReturnType>
</ReturnValue>
<MemberValue>1</MemberValue>
<Docs>
<summary>Reuse the item containers.</summary>
</Docs>
</Member>
<Member MemberName="Standard">
<MemberSignature Language="C#" Value="Standard" />
<MemberSignature Language="ILAsm" Value=".field public static literal valuetype System.Windows.Controls.VirtualizationMode Standard = int32(0)" />
<MemberSignature Language="DocId" Value="F:System.Windows.Controls.VirtualizationMode.Standard" />
<MemberSignature Language="VB.NET" Value="Standard" />
<MemberSignature Language="F#" Value="Standard = 0" Usage="System.Windows.Controls.VirtualizationMode.Standard" />
<MemberSignature Language="C++ CLI" Value="Standard" />
<MemberType>Field</MemberType>
<AssemblyInfo>
<AssemblyName>PresentationFramework</AssemblyName>
<AssemblyVersion>3.0.0.0</AssemblyVersion>
<AssemblyVersion>4.0.0.0</AssemblyVersion>
<AssemblyVersion>5.0.0.0</AssemblyVersion>
<AssemblyVersion>6.0.0.0</AssemblyVersion>
<AssemblyVersion>7.0.0.0</AssemblyVersion>
<AssemblyVersion>8.0.0.0</AssemblyVersion>
<AssemblyVersion>9.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Windows.Controls.VirtualizationMode</ReturnType>
</ReturnValue>
<MemberValue>0</MemberValue>
<Docs>
<summary>Create and discard the item containers.</summary>
</Docs>
</Member>
</Members>
</Type>