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

flex Tree xmlNode jsonData,更换treeData

阅读更多
  这里呈现出源码,查看一下结果。看一下json格式数据和xml格式数据的使用,还有就是更换数据后树的数据显示正常。
引用

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="vertical"
initialize="initTree()"
>
    <mx:Script>
        <![CDATA[
        import mx.controls.Alert;
            [Bindable]
            public var open:Object = new Object();
            [Bindable]

            public var refreshData:Boolean = false;
            [Bindable]
            public var switchObj:Object = new Object();
            [Bindable]

            public var firstObj:Object = new Object();
            [Bindable]

            public var firstObj1:Object = new Object();
            [Bindable]

            public var firstObj2:Object = new Object();
            [Bindable]

            public var provider:String = "firstObj";

            private function initTree():void

            {

                firstObj = new Object();
                firstObj.label = "Foods";
                firstObj.children = new Array();
                firstObj1.label = "Fruits";
                firstObj1.children = new Array();
                firstObj2.label = "Oranges";
                firstObj1.children[0] = firstObj2;
                firstObj.children[0] = firstObj1;
                switchObj = [
                {label:'root1',children:[{label:"firstChilden"},{label:"secondChild"}]}
                ,
                {label:'root2',children:[{label:"firstChilden"},{label:"secondChild"}]}
                ];
            }

            public function changeProvider():void
            {
                open = SampleTree.openItems;
                refreshData = true;
                if (provider == "firstObj")

                {
                    SampleTree.labelField="label";
                    provider = "switchObj";
                    SampleTree.dataProvider = switchObj;
                }
                else if (provider == "switchObj")
                {
                    provider = "xmlObj";
                    SampleTree.labelField="@label";
                    SampleTree.dataProvider = treeData;
                }
                 else if (provider == "xmlObj")
                {
                    provider = "firstObj";
                    SampleTree.labelField="label";
                    SampleTree.dataProvider = firstObj;
                }
            }

            public function renderTree():void{
                if(refreshData){

                    // Refresh all rows on next update.
                    SampleTree.invalidateList();
                    refreshData = false;
                   SampleTree.openItems = open;
                    // Validate and update the properties and layout
                    // of this object and redraw it, if necessary.
                    SampleTree.validateNow();
                }

            }
        ]]>
    </mx:Script>
        <mx:XMLList id="treeData">
    <node label="Mail Box">
        <node label="Inbox">
            <node label="Marketing"/>
            <node label="Product Management"/>
            <node label="Personal"/>
        </node>
        <node label="Outbox">
            <node label="Professional"/>
            <node label="Personal"/>
        </node>
        <node label="Spam"/>
        <node label="Sent"/>
</node>
    </mx:XMLList>
    <mx:Tree id="SampleTree" render="renderTree()"  showRoot="true"  width="250" dataProvider="{firstObj}" labelField="label" />

    <mx:Button label="Change Data Provider" click="changeProvider()"/>
</mx:Application>


分享到:
评论

相关推荐

    动态绑定XML,实现flex树控件的绑定

    在Flex中,可以通过Tree的dataProvider属性来设置数据源。为了实现递归绑定,可以自定义一个TreeItemRenderer,该渲染器知道如何根据XML节点的子节点创建新的TreeItems。 ```actionscript var tree:Tree = new Tree...

    unity3d xml json读写

    string jsonData = JsonUtility.ToJson(newData); File.WriteAllText("path_to_output_file.json", jsonData); ``` 需要注意的是,Unity的JsonUtility仅支持基本类型和Unity的序列化支持的类,对于更复杂的数据结构...

    xml解析器,返回XmlNode结构,便于循环处理

    XmlNode xmlnode = new XmlParsar().parseString(reponse); import java.io.*; import java.util.Vector; /** * &lt;p&gt;Title: Xml树 * * &lt;p&gt;Description: * * &lt;p&gt;Copyright: Copyright (c) 2004 * * &lt;p&gt;...

    readxml flex加载xml文件

    与XMLLoader不同,XMLDocument可以直接加载XML字符串,或者从已存在的XMLNode实例中创建。以下是如何使用XMLDocument加载XML文件: ```actionscript var xmlRequest:URLRequest = new URLRequest("path_to_your_xml...

    java json xml转换

    String jsonString2 = jsonMapper.writeValueAsString(xmlNode); ``` - JAXB和Gson示例: ```java import javax.xml.bind.JAXBContext; import com.google.gson.Gson; // 假设有一个Person类 Person ...

    C#操作XML时,对xmlNode增、删、改操作

    C#操作XML时,对xmlNode增、删、改操作 C#操作XML时,对xmlNode增、删、改操作是指在C#程序中对XML文档中的xmlNode进行增删改操作,包括创建节点、删除节点、修改节点属性和值等操作。 创建节点 在C#中,创建节点...

    flex - xml操作

    ### Flex与XML操作详解 #### 一、E4X与ActionScript 3.0的集成 E4X(ECMAScript for XML)是ECMAScript标准的一个扩展,它被引入到ActionScript 3.0中,极大地简化了XML数据处理的过程。在Flash 5时,ActionScript...

    java实现xmlToJson

    return jsonMapper.writeValueAsString(xmlNode); } } ``` 这个方法中,`XmlMapper`用于解析XML,`ObjectNode`是Jackson中的一个抽象节点,用于表示JSON对象。然后,我们使用`jsonMapper.writeValueAsString()`...

    读去XML的数据加载到Tree控件中(Winform)

    首先,我们需要创建一个XML文件,例如`data.xml`,包含层次化的数据。以下是一个简单的XML示例: ```xml &lt;item id="1"&gt;Item1 &lt;item id="2"&gt;Item2 &lt;item id="3"&gt;Item3 ``` 接下来,我们需要在C#代码中...

    Flex 3速记表AS3.Flex.AIR最新版

    ### Flex 3速记表AS3.Flex.AIR最新版知识点总结 #### 一、Flex 3速记表概述 Flex 3是一款基于Adobe AIR框架的开源开发工具,主要用于构建高性能且具有高度交互性的Web应用程序。它利用了ActionScript 3(AS3)语言...

    C#写的Json与Xml互转支持.net framework2.0以上组件Newtonsoft.Json.dll

    这里,`JObject.Parse()`用于将JSON字符串解析成一个`JObject`,然后`SerializeXmlNode()`方法将其转换为`XmlNode`,进一步转换为XML字符串。 2. **反序列化XML到JSON** 反之,可以使用`JsonConvert`的`...

    XML.zip_xmldocument_xmlnode

    文本保存形式分为五个类XmlNode,XmlElement,XmlAttribute,XmlText,XmlDocument 其中XmlNode为基类其他四个类是由这个类派生出来的,其各功能分别有选择性的保存xml文件中不同的部分和处理函数。

    json报文与XML互转

    JSON json = XMLNode.parseXML(document.getDocumentElement(), config); System.out.println(json.toString()); } } ``` 在上述示例中,我们使用了如commons-lang、commons-collections、commons-httpclient和...

    java 把xml转化为json

    String jsonString = jsonMapper.writeValueAsString(xmlNode); System.out.println(jsonString); } } ``` 在这个例子中,我们首先使用`XmlMapper`读取XML字符串并将其转换为`ObjectNode`,这是Jackson中的一...

    自己封装的XML类,XMLDocoument,XMLNode,XMLAttr等类操作

    本篇文章将详细讲解基于标题和描述所提及的自定义XML类,包括XMLDocument、XmlNode和XmlAttribute,以及如何利用这些类进行XML的操作。 首先,XMLDocument是XML处理的核心类,它代表一个完整的XML文档。在自封装的...

    跨平台解析XML文件 XmlNode V1.01测试版

    //XmlNode.h //版本:V1.01测试版 //为帮助作者完善XmlNode,希望大家讲错误发送给作者,以完善其功能 #ifndef XML_NODE_H #define XML_NODE_H #define XML_OBJECT_TYPE_ERROR 0x00 //节点类型错误 #define XML...

    xmlnode-开源

    此外,它还提供了转换功能,可以将XML数据转换为其他格式,如JSON或自定义的数据结构。 在实际应用中,XMLNode可能被用于各种场景,如配置文件管理、数据交换、网络通信等。由于它是开源的,因此开发者可以自由地...

    xmlDomTree解析器 源码

    - 插入和删除节点:`XmlNode.AppendChild()`、`XmlNode.InsertBefore()`、`XmlNode.RemoveChild()`分别用于添加、插入和移除子节点。 - 修改节点:`XmlNode.InnerText`属性可修改文本内容,`XmlAttribute.Value`...

    xml2json:PHP中的XML到JSON转换器

    从XML创建普通PHP关联数组用法示例: $ xmlNode = simplexml_load_file &#40; 'example.xml' &#41;; $ arrayData = xmlToArray ( $ xmlNode ); echo json_encode ( $ arrayData ); 阅读博客文章以获取。 许可证:

    详解C#对XML、JSON等格式的解析

    // Now person object has the JSON data ``` 2. 序列化对象到JSON:反之,也可以将对象转换为JSON字符串: ```csharp Person person = new Person { Name = "John", Age = 30, City = "New York" }; string json...

Global site tag (gtag.js) - Google Analytics