Mais um exemplo de como se trabalhar com datagrid no flex, espero poder ajudar.
Nao sei postar codigos aqui, mas segue o linguição abaixo:
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600" width="311" height="240" backgroundColor="#FFFFFF"
creationComplete="inicializa()"
>
<fx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
[Bindable]
public var valores:Object;
[Bindable]
public var lista_nome:ArrayCollection;
public function add():void
{
valores = new Object();
valores.campo1 = caixa1.text;
lista_nome.addItem(valores);
}
protected function inicializa():void
{
this.lista_nome = new ArrayCollection();
}
]]>
</fx:Script>
<s:Panel x="30" y="10" width="250" height="200" title="CRUD">
<s:TextInput x="20" y="14" id="caixa1"/>
<s:Button x="156" y="15" label="add" click="add()"/>
<mx:DataGrid x="22" y="43" width="206" height="116" dataProvider="{lista_nome}">
<mx:columns>
<mx:DataGridColumn headerText="Nome" dataField="campo1"/>
</mx:columns>
</mx:DataGrid>
</s:Panel>
</s:Application>