`
honley
  • 浏览: 118669 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

将ArrayCollection作为Flex Tree的数据源

    博客分类:
  • Flex
阅读更多
http://43451125.blog.163.com/blog/static/4479446720103102140858/文中将ArrayCollection作为Tree的数据源,根据作者的思路,可以将JSON赋予ArrayCollection,以达到将JSON作为数据源的目的。
[align=left][/align]如下代码所示:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
    backgroundColor="white" layout="vertical" verticalAlign="middle"
    viewSourceURL="srcview/index.html">
 <mx:Script>
  <![CDATA[
  import mx.collections.ArrayCollection;
  import com.esri.ags.utils.JSON;
  
  import mx.controls.Alert;
  import mx.events.ListEvent;
 
  
  protected function tree_itemClickHandler(event:ListEvent):void
  {
   Alert.show(Tree(event.currentTarget).selectedItem.name);
  }
  [Bindable]
  public var expenses:ArrayCollection = new ArrayCollection([
   {id:"node1", name:"node1name",
    children:[{id:"n11", name:"n11name"},{id:"n12", name:"n12name"},{id:"n13", name:"n13name"}]},
   {id:"node2", name:"node2name",
    children:[{id:"n21", name:"n2name"},{id:"n22", name:"n22name",
     children:[{id:"n231", name:"n231name"},{id:"n232", name:"n232name"}]}]},
   {id:"node3", name:"node3name"}
  ]);
   
   protected function dd_clickHandler(event:MouseEvent):void
   {
    // TODO Auto-generated method stub
    tree.openItems = expenses.getItemAt(0);
   }
   
  ]]>
 </mx:Script>
 
 <mx:Tree id="tree" width="320" dataProvider="{expenses}" itemClick="tree_itemClickHandler(event)"
    labelField="id" rowCount="9" showRoot="true"/>
 <mx:Button  id="dd" click="dd_clickHandler(event)"/>
</mx:Application>


需要注意的是:
1.labelField可以指定json的属性如id或name,该属性需要所有子节点均包含之。
2.子节点需要使用children属性,一定是children属性才能被Tree识别为子节点。
3.在对Tree进行操作时,可以使用额外的JSON包
分享到:
评论

相关推荐

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

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

    用ArrayCollection当做flex中Tree控件的DataProvider

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

    Flex tree的用法

    - **XML数据绑定**: Tree组件可以轻松地绑定到XML数据源。XML的层级结构非常适合表示树形结构,每个XML元素对应Tree的一个节点。 - **XMLList和XMLListCollection**: 将XML转换为XMLList或XMLListCollection,然后...

    Flex Tree快速定位树结点

    数据源通常是XML或ArrayCollection对象,包含树的所有层级信息。 4. **树节点查找**:使用循环或递归方法遍历数据源,比较每个节点的名称与用户输入的字符串是否匹配。匹配成功则记录该节点的索引或唯一标识。 5. ...

    flex tree控件

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

    flex tree icon

    同时,如果数据源是XML或ArrayCollection,可以通过数据绑定将图标URL与节点数据关联起来。这样,当数据改变时,图标也会相应更新。 对于博文链接,虽然具体内容未提供,但我们可以推测这可能是一个关于如何在Flex...

    flex带复选框的tree,flex checkboxtree

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

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

    本篇将详细介绍如何为Flex中的Tree组件设置不同的数据源,包括XML、Array和Object。 首先,让我们从XML数据源开始。XML因其结构化的特性,非常适合用来表示层次数据。在Flex中,我们可以使用mx.collections....

    flex tree的简单使用

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

    flex4Tree组件分层显示数据示例

    首先,Tree组件的基础在于XML数据源。在Flex4中,我们可以使用ArrayCollection或XMLListCollection作为数据提供者,将XML结构转换为可操作的数据模型。在提供的源码中,你可能会看到一个XML文件,其中包含层次化的...

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

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

    Flex Tree XML

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

    tree动态数据源和搜索打开节点所有上级

    要实现动态数据源,我们通常需要创建一个数据模型来存储数据,然后将这个模型绑定到`Tree`组件上。数据模型可以是`ArrayCollection`或者`XMLListCollection`等,它们能方便地处理动态添加、删除或修改数据的操作。当...

    Flex 下拉框为Tree的ComboBox

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

    构造flex3.5的带复选框的树(CheckBoxTree)

    在Flex中,我们可以使用XML或ArrayCollection作为数据源。这里我们使用XML,因为XML易于理解和操作,而且在描述层级关系时非常方便。 ```xml &lt;![CDATA[ private var xmlData:XML = 节点1"&gt; 子节点1.1"/&gt; ...

    Flex中tree实现的种种细节

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

    flex3 Tree右键菜单

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

    Flex 基于数据源的Menu Tree实现代码

    在本文中,我们将探讨如何使用Flex创建一个基于数据源的Menu Tree,特别是如何利用外部参数来指定数据源,并自定义节点的图标。 首先,让我们分析标题和描述中的关键知识点: 1. **数据源**:在Flex中,数据源通常...

    树的节点添加,下载

    添加节点到Flex Tree主要涉及到两个步骤:创建节点数据模型和将模型添加到数据源。以下是一个简单的示例: ```actionscript // 创建新的节点数据模型 var newNodeData:Object = {label: "新节点", data: "这是新...

    flex带comobox的tree

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

Global site tag (gtag.js) - Google Analytics