使用搜索的关键字过滤DataGrid的行
这里主要展示如何使用搜索的关键字过滤DataGrid的行。其实也不是很难,因为DataGrid使用dataProvier可以是 ArrayCollection,并且ArrayCollection本身就有过滤的功能即使用变量filterFunction.所以基本上,你的 DataGrid和dataProvider像如下的定义:
?
public function filterResults():void { dpRows.filterFunction = _sortRows; dpRows.refresh(); } private function _sortRows(item:Object):Boolean { var col:String = cmbCol.selectedItem.data as String; var key:String = keyword.text; key = key.toLowerCase(); if (key != "") { if (col != "any") { var value:String = item[col]; value = value.toLowerCase(); if (value.indexOf(key) >= 0) { return true; } } else { for (var o:String in item) { value = item[o]; value = value.toLowerCase(); if (value.indexOf(key) >= 0) { return true; } } } } else { return true; } return false; }