我听到很多关于包装面板加载速度较慢的消息,因此我们需要一个虚拟化面板。
有人可以给我一个小的包装面板示例,可以证明它加载速度较慢等它需要一个虚拟化面板。
我将一个换行面板设置为列表框的面板控件,并在其中添加了 10000 个字符串对象,这不是问题。我确信我的示例很傻,也许我必须编写一个业务对象并创建一个更大的数据模板才能看到这个问题的实际效果。
请给我看一个示例,证明没有虚拟化的包装面板速度较慢。
谢谢。
我认为性能问题主要取决于树中视觉对象的数量。
默认的 ListBoxItem 模板包含少量元素(我认为是边框和文本块)。如果你有一个模板可以创建一个复杂的可视化,比如说每个项目有 100 个视觉元素,你会根据你的项目数量获得相当多的视觉效果。
这就是普通面板在加载时速度较慢的原因,因为它必须在启动时创建所有对象,而虚拟化版本只为可见项目创建视觉效果,并处理不再显示的视觉效果。
此外,这也会影响内存使用
我最近在制作插入符号表单时需要此功能。使用带有普通换行面板的列表框作为项目面板 - 加载时间最多需要 5 秒。