Apache flex 在itemEditor中触发itemEditEnd事件

Apache flex 在itemEditor中触发itemEditEnd事件,apache-flex,datagrid,itemeditor,Apache Flex,Datagrid,Itemeditor,对于DataGrid专家来说,这可能是一个简单的问题。下面是一个从一行中动态向DataGrid添加行的示例 我试图实现的调整是有一个定制的itemEditor,它是一个带有两个文本输入和一个OK按钮的表单。在我的一生中,我无法使用该按钮触发DataGrid的itemEditEnd事件,在调用destroyItemEditor之前,我需要进行一些处理。我试图亲自直接调度事件,但在DataGrid的updateDisplayList中出现一个奇怪的错误,称EditEmposition为null(E

对于DataGrid专家来说,这可能是一个简单的问题。下面是一个从一行中动态向DataGrid添加行的示例


我试图实现的调整是有一个定制的itemEditor,它是一个带有两个文本输入和一个OK按钮的表单。在我的一生中,我无法使用该按钮触发DataGrid的itemEditEnd事件,在调用destroyItemEditor之前,我需要进行一些处理。我试图亲自直接调度事件,但在DataGrid的updateDisplayList中出现一个奇怪的错误,称EditEmposition为null(EditEmposition.rowIndex)。有什么想法吗?

itemEditEnd
当您在项目编辑器外单击时会触发。如果您自己调度它,则需要在调度之前将
行索引设置为适当的值。

我找到了“duh”答案。基本上,在itemEditor中,使用listData.owner获取对DataGrid的引用,然后设置DataGrid的EditDemposition并选择EditIndex。这种方式让组件担心如何清理itemEditor

var grid:DataGrid = listData.owner as DataGrid;
grid.editedItemPosition = null;
grid.selectedIndex = -1;
实际上,我设置了rowIndex(以及所有其他DatGridEvent属性),但只是不断得到那个奇怪的错误。