通常,您更新绑定到数据网格项的数据,如下所示:
protected function onGridEditEnd(event:DataGridEvent):void
{
if (grid.dataProvider != null && event != null)
{
var editor:Object = event.currentTarget.itemEditorInstance;
if (event.columnIndex == getColumnIndex(columnA) {
collection[event.rowIndex].name = TextInput(editor).text;
}
}
}
在用户完成编辑后立即调度itemEditEnd
事件。
那么,如果我想
itemEditEnd
处理程序以外的其他方法或处理程序)“而”用户正在编辑该项目。
例如;如何从keyDown
事件处理程序触发此操作?
注意:您可以调用onGridEditEnd(null)
来结束编辑但不更新数据。 onGridEditEnd(new DataGridEvent(DataGridEvent.ITEM_EDIT_END, ...))
可以工作,但你还需要存储和传递像columnIndex,rowIndex,dataField等值。这似乎不是最好和最简单的方法。
感谢...
答案 0 :(得分:1)
尝试将editable
属性设置为false(然后您可以将其重新打开)。
或者您可以尝试在其他位置设置焦点(FocusManager.focus = null
)。这样它仍然可以编辑,但用户必须再次点击它。