`

Flex--之XML、XMLLIST和XMLListCollection的关系和区别(转)

 
阅读更多

XML类是最处理XML的最小的单元,它必须有且只有一个根节点。例如:

 

[c-sharp] view plaincopy
  1.  1. private var company:XML =     
  2.  2.    <list>    
  3.  3.     <department title="Finance" code="200">    
  4.  4.      <employee name="John H"/>     
  5.  5.      <employee name="Sam K"/>    
  6.  6.     </department>    
  7.  7.     <department title="Operations" code="400">     
  8.  8.      <employee name="Bill C"/>    
  9.  9.      <employee name="Jill W"/>    
  10. 10.     </department>                       
  11. 11.     <department title="Engineering" code="300">     
  12. 12.      <employee name="Erin M"/>    
  13. 13.      <employee name="Ann B"/>    
  14. 14.     </department>                                   
  15. 15.    </list>;    

 

如果把<list>去掉的话,那它就不是一个XML对象,而变成了XMLList对象了。

下面来说一下XMLList对象,XMLList就是包含一个或多个XML对象的类。对于只包含一个 XML 元素的 XMLList 对象,可以使用 XML 类的所有属性和方法,因为包含一个 XML 元素的 XMLList 被视为等同于 XML 对象。但是如果它包含多个的话,那么调用XML的方法将会报出异常。虽然xml对象可以像上面一样初始化,但是XMLList却不可以。可以通过构造函数 把一个字符串构造一个XMLList对象。

var xmllist :XMLList = new XMLList(String str);

 或者用标签创建

 

 

[java] view plaincopy
  1.  1. <mx:XMLList xmlns="">    
  2.  2.         <book>    
  3.  3.             <author>Peter F. Hamilton</author>    
  4.  4.             <title>Pandora's Star</title>    
  5.  5.             <image>assets/pandoras_star_.jpg</image>    
  6.  6.             <date>Dec 32004</date>    
  7.  7.         </book>    
  8.  8.         <book>    
  9.  9.             <author>Peter F. Hamilton</author>    
  10. 10.             <title>Judas Unchained</title>    
  11. 11.             <image>assets/judas_unchained.jpg</image>    
  12. 12.             <date>Feb 282006</date>    
  13. 13.         </book>    
  14. 14.     </mx:XMLList>    

 

 

XMLListCollection类就是xmllist的集合形式,类似于array的集合形式是arraycollection,这两种集合是绑定到组件的数据源,他们具体动态感知变化的特性。

XMLListCollection对象必须这样创建:new XMLListCollection(XMLList xmllist);

在本例中,可以这样private var companyData:XMLListCollection = new XMLListCollection(company.department);

company.department返回一个xmllist对象。

分享到:
评论

相关推荐

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

    var dataProvider:XMLListCollection = new XMLListCollection(xmlList); tree.dataProvider = dataProvider; ``` 接下来,我们讨论Array数据源。Array是最基础的数据结构,可以包含任意类型的数据。对于Tree组件,...

    Flex tree的用法

    - **XMLList和XMLListCollection**: 将XML转换为XMLList或XMLListCollection,然后设置给Tree的`dataProvider`属性,这样就可以显示XML数据。 - **节点标签和子节点**: XML元素的文本可以作为节点的标签,而子元素...

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

    要将ArrayCollection转换为XML,我们可以利用Flash的内置类`XMLList`和`XML`。例如,如果ArrayCollection中的每个项包含一个ID和名称属性,可以这样转换: ```actionscript var xmlData:XML = new XML(); for each ...

    flex Tree xml

    var dataList:XMLListCollection = new XMLListCollection(xmlList); myTree.dataProvider = dataList; ``` 在`zujian`文件中,可能包含了自定义组件或逻辑,比如用于处理Tree组件的事件监听器,例如点击节点时的...

    Flex DataGrid从XML文件中加载数据

    `users.children()` 返回一个 `XMLList`,将其转换为 `XMLListCollection` 以便在 `DataGrid` 中使用。 5. **DataGrid组件**:`&lt;mx:DataGrid&gt;` 是用来展示数据的组件。它的 `dataProvider` 属性设置为 `users....

    Flex Tree XML

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

    向Tree空间添加删除XML数据节点_Flex4

    var treeData:XMLList = xmlData.item; var treeItems:ArrayCollection = new XMLListCollection(treeData); tree.dataProvider = treeItems; ``` 3. **添加XML节点**: 要向XML对象添加新节点,可以直接调用XML对象...

    带特效的flex list

    在Flex中,我们可以使用XMLListCollection或XMLList将XML数据绑定到List组件。通过XML对象解析XML文件,然后将其转换为适当的数据集合,这通常是通过bindable属性和mx:XML标签完成的。在"带特效的flex list"项目中,...

    FLEX动态树 动态图表

    &lt;fx:XMLList&gt; &lt;!-- 复杂的树形数据结构 --&gt; &lt;/fx:XMLList&gt; &lt;/s:XMLListCollection&gt; ``` 通过以上代码,我们可以看到如何在树形控件上添加事件处理器以实现动态图表的构建。`tree_itemDoubleClickHandler`...

    flex自定义多级系统菜单

    var menuData:XMLList = xml.menus.menu; // 创建数据源 var menuItems:Vector.&lt;MenuItem&gt; = new Vector.(); for each (var itemXML:XML in menuData) { var menuItem:MenuItem = new MenuItem(); menuItem....

    Flex 购物车整站代码

    在Flex中,可以使用XMLListCollection或其他方法解析XML并将其绑定到UI组件。 6. **SWF文件**:library.swf是Flex编译生成的SWF(Shockwave Flash)文件,它是运行Flex应用程序的实际二进制文件。在浏览器中,这个...

    Flex4之DataGrid四个的示例【客户端和服务器端】

    本篇将详细讲解Flex4中的DataGrid组件及其在客户端和服务器端的应用示例,同时也会涉及到Java中的JSON处理,因为这是数据交换的一种常见方式。 一、Flex4 DataGrid组件 1. DataGrid组件简介:DataGrid是Flex中一个...

    Flex连接数据库的方法

    - **XMLListCollection**:与XMLList类似,用于处理XML数据。 - **DataService**:在LCDS中,用于连接到后端数据源并执行查询。 4. **连接实例** - **使用HTTPService连接数据库**:通过HTTP请求向服务器发送SQL...

    flex做的柱状图,动态显示效果

    2. **解析XML**:使用Flex的`XML`类或者`XMLList`类来解析XML数据。这将XML数据转换为可以被图表组件使用的格式。 3. **绑定数据**:将解析后的数据与柱状图系列(Series)进行绑定。在MXML中,我们可以通过`data...

    利用java 后台导出Flex DataGrid为Excel

    - 数据转换:Java需要将接收到的Flex DataGrid的数据结构(可能是JSON或XML)解析成Java对象,例如List, Object&gt;&gt;。 - Excel生成:使用Apache POI库,这是一个强大的API,允许我们在Java中创建、修改和操作...

    flex打印机制详解

    例如,如果`books.xml`包含书籍信息,我们可以通过遍历XML节点,创建一个新的组件(如`BookList.mxml`),并将每个书籍的信息展示在这个组件上,然后添加到打印任务中。 `printDemo2.mxml`, `printDemo1.mxml`和`...

    基于桌面的flex的分页实现

    在Flex中,`DataGrid`组件是最常用的用于展示表格数据的组件,它可以绑定到各种数据源,包括Array、XMLList、甚至远程数据服务。在处理大量数据时,我们通常不会一次性加载所有数据,而是通过分页的方式逐页加载。`...

    flashbuild4.6做的数据维护

    4. **数据适配器**:DataGrid、List等组件可以配合ArrayCollection或XMLListCollection,通过数据适配器展示XML数据。 5. **状态管理**:利用Flex的_states机制,可以轻松管理不同场景下的数据展示和交互。 接下来...

    flex3的cookbook书籍完整版dpf(包含目录)

    对一个XMLList或E4X查询进行绑定 19.6节. 从数组中生成XML对象 19.7节. 如何处理XML服务里所返回的命名空间 19.8节. 将ActionScript 数据对象编码成XML 19.9节. 使用复杂XML数据来填充组件 19.10节. 从Web服务中把...

    第十五节Tree树形菜单组件运用.docx

    &lt;fx:XMLList&gt; 职业'&gt; 女自由职业者' head='...'/&gt; &lt;!-- 更多子节点... --&gt; &lt;!-- 更多顶级节点... --&gt; &lt;/fx:XMLList&gt; &lt;/s:XMLListCollection&gt; &lt;mx:Tree dataProvider="{xml}" /&gt; ``` 通过以上步骤,你...

Global site tag (gtag.js) - Google Analytics