您的位置:首页 > 其它

Flex中datagrid数据过滤

2013-06-27 15:42 204 查看
<?xml version="1.0" encoding="utf-8"?>
<!-- http://yecon.blog.hexun.com/29904545_d.html -->
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="vertical"
verticalAlign="middle"
backgroundColor="white">
<mx:Script>
<![CDATA[
import mx.collections.*;
import mx.events.ItemClickEvent;
private var selectedRegion:String;
public function regionFilterFunc(item:Object):Boolean
{
if (selectedRegion=="all")
return true
else
return item.region == selectedRegion;
}
public function filterAC(event:ItemClickEvent):void
{
selectedRegion=event.label;
myAC.filterFunction=regionFilterFunc;
myAC.refresh();
}
]]>
</mx:Script>
<mx:ArrayCollection id="myAC">
<mx:Array id="myArray">
<mx:Object state="LA" city="Baton Rouge" region="west"/>
<mx:Object state="NH" city="Concord" region="east"/>
<mx:Object state="TX" city="Austin" region="west"/>
<mx:Object state="MA" city="Boston" region="east"/>
<mx:Object state="AZ" city="Phoenix" region="west"/>
<mx:Object state="OR" city="Salem" region="west"/>
<mx:Object state="FL" city="Tallahassee" region="east"/>
<mx:Object state="MN" city="Saint Paul" region="east"/>
<mx:Object state="NY" city="Albany" region="east"/>
</mx:Array>
</mx:ArrayCollection>
<mx:ToggleButtonBar id="tbb" horizontalGap="5" itemClick="filterAC(event);">
<mx:dataProvider>
<mx:Array>
<mx:String>all</mx:String>
<mx:String>east</mx:String>
<mx:String>west</mx:String>
</mx:Array>
</mx:dataProvider>
</mx:ToggleButtonBar>
<mx:DataGrid id="dg" width="100%" height="100%" rowCount="5" dataProvider="{myAC}">
<mx:columns>
<mx:DataGridColumn dataField="state" headerText="State"/>
<mx:DataGridColumn dataField="city" headerText="City"/>
<mx:DataGridColumn dataField="region" headerText="region"/>
</mx:columns>
</mx:DataGrid>
</mx:Application>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: