0

使用浏览器滚动条时是否可以回收 flex 渲染器?

我有一个带有自定义项目渲染器的 flex 树控件,用于对可能具有任意数量的子节点的服务器端数据结构进行丰富的编辑。如果可能的话,如果内容超出可视范围,我想避免使用弹性滚动条,而是更喜欢使用浏览器的滚动条滚动。当树的大小发生变化时,我可以使用 javascript 并ExternalInterface调整应用程序的大小,但我的理解是,这会导致为树中的每一行创建渲染器,出于性能原因,我想避免这种情况。

4

1 回答 1

1

Flex Tree 组件不支持开箱即用的类似功能。假设数据提供者那么大,它将创建足够的渲染器来填充它的整个高度。由于您希望它大于浏览器窗口,因此它将创建比这些边界更多的渲染器。

如果您愿意对现有树进行子类化或修补,您可能可以添加新属性来覆盖用于计算所需渲染器数量的起始值和高度。我不确定这会做多少工作,但它可能就像覆盖发生此计算的单个函数一样简单。

显然,当浏览器滚动时,您需要为树中显示的开始值和结束值传递新值。

于 2009-10-12T19:06:31.770 回答