>From what I understand, is this what you're looking for? (a quick example for you get the basic idea. There are better and cleaner ways to do this.)
<?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="vertical"> <mx:Script> <![CDATA[ import mx.collections.ICollectionView; private function filterScChange(event:Event):void { ICollectionView(grid.dataProvider).filterFunction = filter; ICollectionView(grid.dataProvider).refresh(); } public function filter(item:Object):Boolean { if (item.test1.toUpperCase().match(f1.selectedLabel.toUpperCase()) || item.test2.toUpperCase().match(f2.selectedLabel.toUpperCase()) || item.test3.toUpperCase().match(f3.selectedLabel.toUpperCase()) || item.test4.toUpperCase().match(f4.selectedLabel.toUpperCase())) return true; return false; } ]]> </mx:Script> <mx:ComboBox id="f1" labelField="test1" dataProvider="{datap1}" change="filterScChange(event)"/> <mx:ComboBox id="f2" labelField="test2" dataProvider="{datap1}" change="filterScChange(event)"/> <mx:ComboBox id="f3" labelField="test3" dataProvider="{datap1}" change="filterScChange(event)"/> <mx:ComboBox id="f4" labelField="test4" dataProvider="{datap1}" change="filterScChange(event)"/> <mx:ArrayCollection id="datap"> <mx:Object test1="some" test2="random" test3="text" test4="here"/> <mx:Object test1="also" test2="here" test3="and" test4="here"/> <mx:Object test1="here" test2="and" test3="here" test4="also"/> <mx:Object test1="here" test2="some" test3="random" test4="text"/> </mx:ArrayCollection> <mx:ArrayCollection id="datap1"> <mx:Object test1="some" test2="random" test3="text" test4="here"/> <mx:Object test1="also" test2="here" test3="and" test4="here"/> <mx:Object test1="here" test2="and" test3="here" test4="also"/> <mx:Object test1="here" test2="some" test3="random" test4="text"/> </mx:ArrayCollection> <mx:DataGrid id="grid" dataProvider="{datap}"> <mx:columns> <mx:DataGridColumn headerText="UserId" dataField="test1"/> <mx:DataGridColumn headerText="UserName" dataField="test2"/> <mx:DataGridColumn headerText="Active" dataField="test3"/> <mx:DataGridColumn headerText="Last seen" dataField="test4"/> </mx:columns> </mx:DataGrid> </mx:Application>

