VirtualizingStackPanel的主要缺点是什么?如果它没有,那么为什么不在ItemsControl中将其作为默认的面板行为/模板?
发布于 2010-10-29 19:36:01
VirtualizingStackPanel类上的MSDN page包含以下语句:
(虚拟化)一词是指这样一种技术,通过该技术,基于在屏幕上可见的项,从大量数据项生成用户界面(UI)元素的子集。
和
仅当面板中包含的items控件创建自己的项目容器时,才会发生StackPanel中的
虚拟化。
和
VirtualizingStackPanel是ListBox元素的默认项目宿主。
从这一点上看,对于“正常”使用StackPanel作为按钮、文本块等的主机来说,虚拟化不会提供任何优势,甚至可能会带来性能开销。当在ListBox中使用时,虚拟化确实具有以下好处: a)项目容器由项目控件创建,以及b)列表中的元素可能比任何时候在屏幕上显示的元素都多。
https://stackoverflow.com/questions/4051032
复制相似问题