我有一个TreeView,它使用DataTemplates作为TreeViewItems,并且每个都有一个ItemsSource绑定设置。我在这棵树中有大量的项目,所以我想知道如何限制ItemsSource只对当前屏幕上的树视图项执行。
答案 0 :(得分:0)
我的最佳解决方案是在开场<TreeView>
标记内添加VirtualizingPanel.IsVirtualizing="True" VirtualizingPanel.VirtualizationMode="Recycling" VirtualizingPanel.CacheLength="1"
。我没有费心去设置缓存单元,因为从我在文档中阅读的内容来看,它的默认单位是页面。这些设置的最终结果是屏幕上的树项,一页上面的页面和一页下面的页面是唯一执行ItemsSource
绑定的树项目。