FLEX实践—XML、XMLList、XMLListCollection、ArrayCollection关系转换

在本实例中将从一个XML对象通过层层转换最终变为ArrayCollection对象

 

 

<?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="init()"> <mx:Script> <!--[CDATA[ import mx.collections.XMLListCollection; import mx.collections.ArrayCollection; import mx.controls.Alert; public var myData:XML= <tables> <table> <name>TRP_USERS</name> <statement>CREATE TABLE IF NOT EXISTS TRP_USERS (USER_ID INTEGER PRIMARY KEY AUTOINCREMENT,USER_NAME TEXT,PASSWORD TEXT,CREATION_DATE DATE)</statement> </table> <table> <name>TRP_PROJECTS</name> <statement>CREATE TABLE IF NOT EXISTS TRP_EMPLOYEE_PROJECTS (EMPLOYEE_PROJECT_ID INTEGER PRIMARY KEY AUTOINCREMENT,USER_ID INTEGER,EMPLOYEE_NUMBER TEXT,LEVEL_CODE TEXT,PROJECT_NAME TEXT,PROJECT_MANAGER TEXT,START_DATE DATE,SCHEDULE_END_DATE DATE,TECH_DIRECTOR_NAME TEXT,TECH_LEADER_NAME TEXT,TWO_WEEK_OUT TEXT,MEMO TEXT,UPLOAD_FLAG TEXT,CREATION_DATE DATE)</statement> </table> </tables>; private var xmlList:XMLList=new XMLList(); private var xmlListCollection:XMLListCollection=new XMLListCollection(); private var provider:ArrayCollection; private function init():void { xmlList=myData.elements("table"); xmlListCollection.source=xmlList; provider=new ArrayCollection(xmlListCollection.toArray()); grid.dataProvider=provider; } ]]--> </mx:Script> <mx:DataGrid x="221" y="65" width="742" height="294" id="grid"> <mx:columns> <mx:DataGridColumn headerText="Name" dataField="name"/> <mx:DataGridColumn headerText="Sql" dataField="statement"/> </mx:columns> </mx:DataGrid> </mx:Application>

运行结果:

FLEX实践—XML、XMLList、XMLListCollection、ArrayCollection关系转换_第1张图片

 

 

你可能感兴趣的:(xml,Date,datagrid,Flex,Integer,application)