user.xml文件:
<?xml version="1.0" encoding="UTF-8"?>
<UserInfo>
<User>
<id>2421</id>
<name>Divid</name>
<password>12345</password>
</User>
<User>
<id>2403</id>
<name>Lance</name>
<password>12345</password>
</User>
<User>
<id>1</id>
<name>Allen</name>
<password>12345</password>
</User>
</UserInfo>
.mxml文件:
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"
initialize="init()"
>
<fx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
import mx.controls.Alert;
import mx.rpc.events.FaultEvent;
import mx.rpc.events.ResultEvent;
import mx.rpc.http.HTTPService;
[Bindable] public var xmlListColl:XMLList;
[Bindable]public var userXmlListColl:ArrayCollection;
function init(){
getUserList();
}
public function getUserList():void
{
var configService:HTTPService = new HTTPService();
configService.url = "user.xml";
configService.resultFormat = "xml";
configService.addEventListener(ResultEvent.RESULT, configResult);
configService.addEventListener(FaultEvent.FAULT, configFault);
configService.send();
}
private function configFault(event:mx.rpc.events.FaultEvent):void
{
Alert.show("加载异常");
}
private function configResult(event:ResultEvent):void
{
try{
var configXML:XML = new XML(event.result.toString());
xmlListColl = new XMLList();
xmlListColl= configXML.User;
userXmlListColl = new ArrayCollection();
for(var i:int = 0;i < xmlListColl.length() ; i++){
var obj:Object = {
id: xmlListColl[i].id,
name : xmlListColl[i].name,
password : xmlListColl[i].password
}
userXmlListColl.addItem(obj);
}
}catch(error:Error){
}
}
]]>
</fx:Script>
<fx:Declarations>
<!-- 将非可视元素(例如服务、值对象)放在此处 -->
</fx:Declarations>
<mx:DataGrid x="210" y="184" id="datagrid" dataProvider="{userXmlListColl}">
<mx:columns>
<mx:DataGridColumn headerText="id" dataField="id"/>
<mx:DataGridColumn headerText="用户" dataField="name"/>
<mx:DataGridColumn headerText="密码" dataField="password"/>
</mx:columns>
</mx:DataGrid>
</s:Application>