hai我是flex的新手并且正在尝试示例但却什么都没有
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="bookData.send()">
<mx:HTTPService id="bookData" url="/assets/books.xml"/>
<mx:DataGrid x="56" y="250" width="950" dataProvider= "{bookData.lastResult.books.stock}"/>
</mx:Application>
上面是我的mxml文件 这是我的books.xml
<?xml version="1.0" encoding="iso-8859-1"?>
<books>
<stock>
<name>The Picasso Code</name>
<author>Dan Blue</author>
<category>Fiction</category>
<description>Cubist paintings reveal a secret society of people who really look like that</description>
</stock>
<stock>....
我认为我在dataprovider标签中做错了什么 原因是我何时使用
dataProvider = "{d}"
它返回带对象的数据网格
答案 0 :(得分:0)
数据提供者必须是您的HttpService bookData的resultEvent库存。您应该在HttpService标记中使用result事件。例如,
<mx:HTTPService id="bookData" url="/assets/books.xml" result="contentHandler(event)"/>
import mx.rpc.events.ResultEvent;
[Bindable] private var xmlListData:XMLList;
private function contentHandler(evt:ResultEvent):void{
xmlListData= evt.result.stock;
}
<mx:DataGrid x="56" y="250" width="950" dataProvider= "{xmlListData}"/>
答案 1 :(得分:0)
我在你的代码中缺少的是url-request vor你的xml。 每当从后端调用新数据时,Databindung和Dataprovider都需要事件基站通信。所以也是第一次。
您需要将xml从后端转换为xmlCollection。使var可绑定。 可绑定XMLXollection的名称是您的Dataprovider。
BR 弗兰克