<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 設置某些自定義格式,也可能將月的數字形式轉換爲字符串形式。