牛哥真牛 2012年06月05日
Flex Tree的刷新问题,求救求救!!
flex树的点击打开
//树的点击打开事件
protected function itemOpeningHandler(event:TreeEvent):void
{
selectedNode=event.item as SpecVO;
if(!specTree.isItemOpen(event.item)&&selectedNode.children.length==0)
{
// 此处通过Blazeds远程异步调用java端方法,获取数据
......


}
}

//通过Blazeds调用java端方法后flex端自动加载的方法,以此获取树节点的children,并刷新树
protected function remoteJavaData(event:ResultEvent):void
{
selectedNode.children=event.result as ArrayCollection;
treeData.itemUpdated(selectedNode);
}


<mx:Tree id="myTree" dataProvider="{treeData}"
itemOpening="itemOpeningHandler(event)" labelField="name" >
</mx:Tree>
其中treeData是一个ArrayCollection,其数据结果是从java端传过来的,如果通过在树上进行单机节点图标操作,树是可以打开的;现在我通过增加或删除某一节点,然后获取其父节点数据并指定给selectedNode,然后通过下列方法重新加载其children,这也是成功的,
protected function itemOpeningHandler(event:TreeEvent):void
{
selectedNode=event.item as SpecVO;
if(!specTree.isItemOpen(event.item)){
// 此处通过Blazeds远程异步调用java端方法,获取数据
......
}
只是在重新远程执行treeData.itemUpdated(selectedNode)时,树的数据没有刷新



寻求大家的帮助,谢谢!
...全文
429 点赞 收藏 7
写回复
7 条回复

还没有回复,快来抢沙发~

发动态
发帖子
Flex
创建于2007-12-13

4211

社区成员

9097

社区内容

多媒体/设计 Flex
社区公告
暂无公告