From Evernote: |
Calculated value in column of a DataGrid FLEXClipped from: http://www.waldosmeets.com/2004/05/11/533/ |
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml " layout="vertical" creationComplete="init()">
<mx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
[Bindable] private var marksCollection:ArrayCollection = new ArrayCollection();
private function init():void{
marksCollection.addItem({"Maths":84,"Science":90,"English":75});
marksCollection.addItem({"Maths":82,"Science":89,"English":71});
marksCollection.addItem({"Maths":78,"Science":80,"English":65});
marksCollection.addItem({"Maths":65,"Science":60,"English":52});
marksCollection.addItem({"Maths":98,"Science":99,"English":91});
marksCollection.addItem({"Maths":90,"Science":92,"English":87});
}
private function calc():void{
for each (var item:Object in marksCollection){
var total:Number = item.Maths + item.Science + item.English;
var perc:Number = Math.round((total/300)*100);
item.Total = total;
item.Percentage = perc + "%";
}
marksCollection.refresh();
}
]]>
</mx:Script>
<mx:Button label="Calculate" click="calc()"/>
<mx:DataGrid width="100%" height="100%" dataProvider="{marksCollection}">
<mx:columns>
<mx:DataGridColumn dataField="Maths" headerText="Maths"/>
<mx:DataGridColumn dataField="Science" headerText="Science"/>
<mx:DataGridColumn dataField="English" headerText="English"/>
<mx:DataGridColumn dataField="Total" headerText="Total"/>
<mx:DataGridColumn dataField="Percentage" headerText="Percentage"/>
</mx:columns>
</mx:DataGrid>
</mx:Application>