如果按照以下设置,TreeView 不能进行虚拟化,原因是什么?
<TreeView
ItemsSource="{Binding}"
VirtualizingStackPanel.IsVirtualizing="True">
<TreeView.ItemsPanel>
<ItemsPanelTemplate>
<VirtualizingStackPanel />
</ItemsPanelTemplate>
</TreeView.ItemsPanel>
<TreeView.ItemContainerStyle>
<Style
TargetType="{x:Type TreeViewItem}">
<Setter
Property="IsExpanded"
Value="{Binding IsExpanded, Mode=TwoWay}"/>
</Style>
</TreeView.ItemContainerStyle>
</TreeView>
我有一个TreeView没有进行虚拟化,当我展开节点(并使用Snoop检查)时,我发现所有的TreeViewItems都被创建了。我想知道是否有一些容器的组合可以防止TreeView对其内容进行虚拟化。(例如在StackPanel中托管它)