flex 中tree控件使用外部xml做数据源

Tree控件如果使用外部xml文件做数据源,需要先引入文件。有两种方法:

 

一、

Xml代码 复制代码
  1. <mx:XML id="treeData1" source="data/treeDataProvider.xml"/>   
<mx:XML id="treeData1" source="data/treeDataProvider.xml"/> 

 

      Tree的dataprovider使用treeData1.nodeName即可.labelField="@labelName"可指定要显示的字段的名称

 

二、 

Xml代码 复制代码
  1. 需要在<mx:Application />中调用creationComplete="init()"  
需要在<mx:Application />中调用creationComplete="init()"
Xml代码 复制代码
  1. private var treeData2:XML = new XML();     
  2.             private function init():void      
  3.             {      
  4.                 var url:URLRequest = new URLRequest("data/treeDataProvider.xml");   //外部文件路径   
  5.                 var loader:URLLoader = new URLLoader();      
  6.                 loader.addEventListener(Event.COMPLETE,onComplete);      
  7.                 loader.load(url);      
  8.             }      
  9.             private function onComplete(event:Event):void{      
  10.                 var result:URLLoader = URLLoader(event.target);      
  11.                 treeData2XML(result.data);      
  12.             }   
private var treeData2:XML = new XML();  
            private function init():void   
            {   
                var url:URLRequest = new URLRequest("data/treeDataProvider.xml");   //外部文件路径
                var loader:URLLoader = new URLLoader();   
                loader.addEventListener(Event.COMPLETE,onComplete);   
                loader.load(url);   
            }   
            private function onComplete(event:Event):void{   
                var result:URLLoader = URLLoader(event.target);   
                treeData2= XML(result.data);   
            } 

 

            Tree的dataprovider使用treeData2.nodeName即可。labelField="@labelName"可指定要显示的字段的名称

你可能感兴趣的:(xml,Flex)