2011-03-23 4 views
3

Как сделать вычисленный столбец в Flex datagrid? пример:Вычислительная таблица данных сетки

<mx:DataGrid dataProvider="{ConsoleDetails}" id="datagrid"> 
    <mx:columns> 
    <mx:DataGridColumn headerText="Absent Hrs" dataField="absentHrs"/> 
    <mx:DataGridColumn headerText=Replaced Hrs" dataField="replacedHrs"/> 
    <mx:DataGridColumn headerText="Difference" dataField="<WHAT TO PUT HERE>"/>     
    </mx:columns> 
</mx:DataGrid> 

Как рассчитать «Difference» Колонка (которая должна быть разность двух других столбца) в этой сетке, что положить в собственность DataField этого столбца?

Благодаря

ответ

4

Я бы один из двух подходов:

  1. Создать новое свойство на классе вы отображаются в сетке, как это:

    публичную функцию получить разницу() : Number { return replaceHrs - absentHrs; }

    И затем установить разницу как поле данных столбца.

  2. В качестве альтернативы создайте функцию метки, которая возвращает разность двух полей и устанавливает это вместо DataField.

+0

Ну, я не хотел использовать любой из этих методов. Я хотел знать, есть ли встроенная функциональность, предоставляемая datagrid для такого упрощения? Благодарю. – Tintin

+0

Да, функция labelFunction - это встроенная функциональность. Вы должны использовать это. – sean

+4

Почему бы вам не использовать какой-либо из этих методов? Это правильный способ делать вещи. Datagrid не выполняет вычисления данных, это не превосходно. –

Смежные вопросы