I usually add a listener to my ArrayCollection.

e.g. collection.addEventListener(CollectionEvent.COLLECTION_CHANGE,
handler);

http://livedocs.adobe.com/flex/3/html/help.html?content=about_dataproviders_5.html

On Thu, Nov 26, 2009 at 1:04 PM, markflex2007 <[email protected]>wrote:

>
>
> Hi,
>
> I set one column in dataGrid as "editable='true'",so we can update values
> with dataGrid.I try to use acPeopleUpdate to get updated value from
> dataGrid, but acPeopleUpdate get values that is before updated.
> Please help me know how to get updated values from dataGrid.
>
> Thanks
>
> code:
>
> <?xml version="1.0" encoding="utf-8"?>
> <mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml";
> creationComplete="init()" layout="absolute" backgroundGradientAlphas="[1.0,
> 1.0]"
> backgroundGradientColors="[#FEFEFE, #FEFEFE]" horizontalScrollPolicy="off">
> <mx:Script>
> <![CDATA[
> import mx.collections.ArrayCollection;
> import mx.utils.ObjectUtil;
>
> [Bindable]
> private var acPeople:ArrayCollection;
>
>
> private var acPeopleUpdate:ArrayCollection;
>
> private function init():void{
>
> acPeople = new ArrayCollection([{name:"Mark",phone:"416-123-1234",age:25},
>
> {name:"Joe",phone:"416-123-1234",age:55},{name:"David",phone:"416-123-1234",age:29}
> ])
>
>
> }
>
> private function updateAC():void{
> acPeopleUpdate = dg1.dataProvider as ArrayCollection;
>
> }
>
> ]]>
> </mx:Script>
> <mx:DataGrid id="dg1" x="0" y="116" width="100%" editable="true"
> dataProvider="{acPeople}" itemEditEnd="updateAC()">
> <mx:columns>
> <mx:DataGridColumn editable="false" headerText="Name" dataField="name"/>
> <mx:DataGridColumn editable="false" headerText="Phone" dataField="phone"/>
> <mx:DataGridColumn editable="true" headerText="Age" dataField="age" />
> </mx:columns>
> </mx:DataGrid>
>
> </mx:WindowedApplication>
>
>  
>

Reply via email to