`
feng2010
  • 浏览: 5725 次
  • 性别: Icon_minigender_2
  • 来自: 沈阳
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

Flex Tree学习(ArrayCollection)

阅读更多
上学期也学过一阵子flex4,不过都是照着别人的代码写,然后也没出什么大乱子。这两天想自己设计写写,结果搞了好久也没整出了。我的问题是,用ArrayCollection作为Tree的dataprovider,从数据库中返回一个List对象,结果死活不能显示,tree始终只能显示第一级节点数据。各种调试,数据对象映射没有问题,返回的子节点数据也有,肯定不是null的,但是为什么不显示呢?经过多方查找,才知道,一个ArrayCollection要想作为tree的数据源,必须要要一个chidren属性,指向其子节点。诡异的是,我也定义了这样一个属性,而且这个属性也赋值了,不是null。我实在是绝望了。。。。然后又开始一个一个测试那个ArrayCollection的数据,利用getItemAt(),最后终于找到原因了,原来是我的数据从数据库返回之后貌似没有映射,如果把返回的数据显示的转换成需要的数据类型,然后就ok了,因为我的children是在映射的时候给它赋值的。
1)映射代码:
public function set organizations(value:ArrayCollection):void
{
children=value;
_organizations = value;
}
2)查询返回结果:
private function getResult(e:ResultEvent):void{
var temp:ArrayCollection=new ArrayCollection();
temp = e.result as ArrayCollection;
for(var i:int=0;i<temp.length;i++){
var en:Enterprise = temp.getItemAt(i) as Enterprise;//这里需要显示的转换一下,否则children是null
var ogt:ArrayCollection=en.organizations;
for(var j:int=0;j<ogt.length;j++)
{
var o:Organization=ogt.getItemAt(j) as Organization;
en.organizations.setItemAt(o,j);
}
treeData.addItem(en);
}
}
注意,这里如果没有var en:Enterprise = treeData.getItemAt(0) as Enterprise;这一句的话,
if(en.children==null)Alert.show("children is null");
这句话就会执行,意味着这时候children是null的,因为上面(1)的映射没执行。
所以树形结构就只有第一层显示。

关键点:children属性,在vo值对象中需要给这个children添加getter和setter方法,否则结果也不正常显示。具体原因不详。
分享到:
评论

相关推荐

    Flex Tree 通过Arraycollection转化为XML数据源,新增、删除、修改功能的整合

    本篇文章将聚焦于如何将ArrayCollection转换为XML数据源,并实现Flex Tree组件的新增、删除和修改功能。以下是详细的解释和步骤。 首先,ArrayCollection是Flex中常用的数据结构,它是一个动态数组,支持数据绑定和...

    Flex tree的用法

    Flex Tree组件是Adobe Flex框架中的一个关键元素,用于在用户界面上展示层次结构的数据。它在各种应用程序中广泛使用,特别是在需要...通过学习和实践提供的源代码,能够进一步提升对Flex Tree控件的理解和应用能力。

    Flex Tree 中Checkbox

    Flex Tree 是一种在Adobe Flex框架中用于展示层次结构数据的组件。它允许用户通过节点来探索和操作数据,而Checkbox的引入则为用户提供了一种多选功能,使得用户可以选择多个树节点。在“Flex Tree 中Checkbox”的...

    Flex Tree快速定位树结点

    Flex Tree 是Adobe Flex框架中的一个组件,用于展示层次结构数据,通常以树形结构呈现。在实际应用中,用户可能需要快速找到特定的树节点,这正是"Flex Tree快速定位树结点"这一功能的核心所在。它允许用户通过输入...

    flex tree控件

    Tree控件的数据源通常是ArrayCollection或XMLListCollection,它们包含一系列对象,每个对象代表树的一个节点。通过数据绑定,我们可以将这些数据对象映射到Tree的可视节点上。 3. 自定义节点图标: 默认情况下,...

    flex带复选框的tree,flex checkboxtree

    3. 数据结构:CheckboxTree的数据源通常是一个数据结构,如ArrayCollection或XML,包含了树形结构的数据。每个节点可能包含一个标识符、文本、子节点列表,以及一个表示是否选中的布尔值。 在提供的压缩包文件中,...

    flex tree icon

    通过查看和运行这个Demo,开发者可以直接学习到如何在实际项目中应用Flex Tree的图标功能。 总结来说,"flex tree icon"是Flex开发中的一个重要概念,涉及到如何在树形组件中添加和管理图标。通过阅读相关博客、...

    用ArrayCollection当做flex中Tree控件的DataProvider

    本文将详细探讨如何使用`ArrayCollection`作为Flex中的`Tree`控件的数据提供者,以替代通常使用的XML数据源。 首先,让我们理解`ArrayCollection`的概念。`ArrayCollection`是Flex中的一个类,它继承自`...

    flex tree的简单使用

    1. **数据源**:Tree组件的数据来源于一个数据提供者,它可以是ArrayCollection、XMLListCollection或其他实现了 IList 接口的对象。数据提供者中的每个项目代表Tree中的一个节点,每个节点可以有子节点。 2. **...

    flex tree 中渲染checkBox

    通过学习这个主题,开发者可以提升其在Flex应用程序中的用户界面设计能力。 `flex tree 中渲染checkBox`这个话题涉及到在Flex Tree组件的每个节点上添加复选框控件,使得用户能够通过单击复选框来选择或取消选择树...

    Flex Tree 异步加载数据及分屏小工具

    2. **数据提供者**:`dataProvider`是Flex Tree组件用来存储和显示数据的对象,它可以是数组、ArrayCollection或XMLListCollection。在异步加载场景下,dataProvider需要能够动态添加或更新数据。 3. **事件监听**...

    Flex Tree XML

    在Flex中,Tree组件可以绑定到各种数据源,包括Array,ArrayCollection,以及XML或XMLList。XML因其结构化和易于解析的特性,常被用来存储和传递层次结构的数据,这与Tree组件的展示需求非常匹配。在"TreeExample"中...

    flex4Tree组件分层显示数据示例

    在Flex4中,Tree组件是一种强大的用户界面元素,用于展示层次结构的数据。它允许用户以图形化的方式浏览和操作多级目录或具有嵌套结构的信息。在这个“flex4Tree组件分层显示数据示例”中,我们将深入探讨如何在Flex...

    flex带comobox的tree

    flex自定义用ArrayCollection做数据源的带checkbox的tree(功能强大的完美版^_^) .

    Flex中Tree组件的数据源举例(xml,array,object)

    在Flex开发中,Tree组件是一种常用的用户界面元素,用于展示层次结构的数据。它通常用于文件系统、组织结构或任何有层级关系的数据展示。本篇将详细介绍如何为Flex中的Tree组件设置不同的数据源,包括XML、Array和...

    Flex 下拉框为Tree的ComboBox

    在Flex中,Tree的数据源通常是XML或ArrayCollection。对于ArrayCollection,每个元素代表一个树节点,可以包含子节点数组和其他属性。在ComboBox中,我们需要确保当用户选择一个Tree节点时,ComboBox的selectedItem...

    flex3 Tree右键菜单

    Tree组件是基于MX容器的,它支持数据驱动,这意味着我们可以使用ArrayCollection或XML列表来作为数据源。每个树节点都可以包含子节点,并且可以通过展开和折叠操作来显示或隐藏这些子节点。 在Flex3中添加右键菜单...

    Flex中tree实现的种种细节

    同时,`Tree`组件还支持数据提供者(如ArrayCollection)动态更新,这意味着当数据源发生变化时,Tree会自动更新其视图。 文章可能会详细讲解如何使用MXML或ActionScript创建Tree实例,并绑定数据源。对于源码部分...

    FLEX ——完美的 TREE

    通过学习和实践以上知识点,你将能够利用FLEX创建出类似QQ的TREE组件,实现高效、美观且用户友好的数据展示。文档“完美的Tree.docx”可能包含了更具体的实现步骤和代码示例,对于深入理解和实现这个项目非常有帮助...

    flex iFrame的tree控件连接到相应的网页

    在“flex iFrame的tree控件连接到相应的网页”这个示例中,我们主要探讨如何利用Flex的Tree控件与iFrame组件协同工作,实现用户在Tree上选择不同的节点时,iFrame加载对应的网页内容。 首先,我们需要了解Flex Tree...

Global site tag (gtag.js) - Google Analytics