无法使用成功的RemoteObject调用的新分支刷新树控件

时间:2010-02-02 18:08:29

标签: flex events flex3 tree cairngorm

我正在尝试使用我从BlazeDS获取的值填充mx:tree组件。 BlazeDS返回的数据很好 - 它是Folder值对象的ArrayCollection。

我被指示使用Cairngorm进行这个项目。我是Flex和Cairngorm的新手。根据我在网上阅读的有限文档,我应该用数据填充模型,所以我把数组集合在那里。

我坚持的是尝试更新树组件。我觉得我需要一些方法来通知容器组件树,数据(即子文件夹)在模型上是可用的。我希望可以在容器组件中触发一个函数来将子文件夹添加为所选节点的子节点(我可以在远程对象调用之前将其放在模型上)然后激活tree.invalidateList()和tree.validateNow()。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

我找到了一种方法来做到这一点,虽然我不确定这是否是推荐的方式。

我得到了Command类,将文件夹VO的ArrayCollection粘贴到模型上名为“子文件夹”的属性中。我在树的父容器中使用了ChangeWatcher来监视模型的“子文件夹”属性,并在需要时触发一个函数来更新树节点。

如果有人知道更好的方法,请告诉我。我本来希望找到一本Cairngorm食谱或最佳实践文章,但我还没有偶然发现这样的事情。 Cairngorm文档似乎相当稀疏​​ - 我很惊讶它是最受欢迎的Flex框架,因为这个事实。