<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="absolute"
creationComplete="http_test.send()"
>
<mx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
[Bindable]
var datas:ArrayCollection;
private function onResult():void{
this.datas=http_test.lastResult.blog.channel.item;
}
private function applyFilter():void{
if(this.datas.filterFunction==null){
this.datas.filterFunction=this.filterCities;
}
this.datas.refresh();
}
private function filterCities(item:Object):Boolean{
var match:Boolean=true;
if(cityFilter.text!=""){
var city:String=item["city"];
var filter:String=cityFilter.text;
// 转成小写字母 搜索字符串(输入的信息转成小字后)
// 也就是把它们全部都转换成小写再进行搜索
// city.indexOf(filter) 如果没有找就就返回一个-1
if(!city || city.toLowerCase().indexOf(filter.toLowerCase())<0){
match=false;
}
}
return match;
}
]]>
</mx:Script>
<mx:HTTPService id="http_test"
url="/flex_xml/date.xml"
useProxy="false"
resultFormat="object"
result="onResult();">
</mx:HTTPService>
<mx:Panel title="{http_test.lastResult.blog.channel.title}" width="90%" height="90%" verticalAlign="middle" horizontalAlign="center">
<mx:Form>
<mx:FormItem label="City">
<mx:TextInput id="cityFilter" change="applyFilter();"/>
</mx:FormItem>
</mx:Form>
<mx:DataGrid id="http_dataGird"
dataProvider="{datas}"
width="100%" height="50%">
<mx:columns>
<mx:DataGridColumn headerText="标题" dataField="title"/>
<mx:DataGridColumn headerText="作者" dataField="author"/>
<mx:DataGridColumn headerText="类型" dataField="category"/>
<mx:DataGridColumn headerText="连接" dataField="link"/>
<mx:DataGridColumn headerText="城市" dataField="city"/>
</mx:columns>
</mx:DataGrid>
</mx:Panel>
</mx:Application>
DataGrid里面的数据是取于XML如果不知道怎么解析XML数据,可以看博客《Flex里解析XML数据》里面有完整的工程,可下载
Flex数据网格与XML数据
3397

被折叠的 条评论
为什么被折叠?



