我有一个没有的数据网格。列如:
<s:DataGrid id="cpDataGrid" dataProvider="{arrList}">
<s:columns>
<mx:ArrayList>
<mx:source>
<s:GridColumn headerText="Name" dataField="name" editable="false"/>
<s:GridColumn headerText="Age" datafield="age" editable="false"/>
<s:GridColumn headerText="Test" dataField="test" editable="false" />
<s:GridColumn width="100" headerText="Result" dataField="result" >
</mx:source>
</mx:ArrayList>
</s:columns>
</s:DataGrid>
在上面的datagrid结果列中是可编辑的。当用户在该列中输入值时,我已经创建了函数,如下所示:
protected function onCreationCompleteHandler(event:FlexEvent):void
{
cpDataGrid.addEventListener(GridItemEditorEvent.GRID_ITEM_EDITOR_SESSION_SAVE, onSave);
}
private function onSave(event:GridItemEditorEvent):void
{
var name:String = event.currentTarget.selectedItem.name;
}
现在,我将在编辑结束时获得名称和其他字段值。但我需要结果文本。表示用户在该字段中输入的文本。
如果假设用户在结果列中输入 50 ,那么我该如何获得该值?
任何帮助都将非常感谢。
答案 0 :(得分:1)
对于spark.DataGrid
,您需要根据spark.DataGrid
创建自定义类并覆盖方法endItemEditorSession
。您可以在其中访问DataGrid
的属性itemEditorInstance
。
如果您使用mx.DataGrid
,则可以将DataGridEvent.ITEM_EDIT_END
事件与itemEditorInstance
的{{1}}属性结合使用。
DataGrid