DataGrid修改(格式化)一列數據

在所要求格式化的那列使用labelFunction


<mx:DataGridColumn headerText="設備狀態" dataField="state" width="80" textAlign="center">


顯示的設備狀態爲1,2,4,5這樣的,應該顯示的是設備入庫,設備出庫。。。這樣的


<mx:DataGridColumn headerText="設備狀態" dataField="state" width="80" textAlign="center" labelFunction="stateFn">



函數 stateFn 返回String


protected function stateFn(item:Object, column:DataGridColumn):String
{
var s:int = int(item[column.dataField]);
if (s == 0) return "設備入庫";
if (s == 1) return "設備出庫";
if (s == 2) return "設備回收";
if (s == 3) return "設備作廢";
return "";
}




AsDoc 中關於labelFunction的介紹:

確定此列中顯示文本的函數。默認情況下,列顯示與列名稱匹配的數據字段的文本。不過,有時您希望顯示基於多個數據字段的文本,或顯示不具備自己想要格式的文本。在這種情況下,可使用 labelFunction 指定一個回調函數。
對於 DataGrid 控件,方法簽名具有以下格式:

labelFunction(item:Object, column:DataGridColumn):String
其中,item 包含 DataGrid 項目對象,並且 column 指定 DataGrid 列。

回調函數可能會連接數據中的 firstName 和 lastName 字段,或者對 Date 設置某些自定義格式,也可能將月的數字形式轉換爲字符串形式。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章