2

对于您的 DataGrid 专家来说,这可能是一件容易的事。我按照一个示例从行内动态地将行添加到 DataGrid

http://www.switchonthecode.com/tutorials/adding-dynamic-rows-to-flex-datagrid

我试图完成的调整是拥有一个自定义 itemEditor,它是一个带有两个 TextInputs 和一个 OK 按钮的表单。在我的一生中,我无法让那个按钮触发 DataGrid 的 itemEditEnd 事件,在我调用 destroyItemEditor 之前我有一些处理。我尝试自己直接调度事件,但在 DataGrid 的 updateDisplayList 中出现一个奇怪的错误,说editedItemPosition 为空(editedItemPosition.rowIndex)。有任何想法吗?

4

2 回答 2

3

我想出了“呃”的答案。基本上,在itemEditor 中使用listData.owner 获取对DataGrid 的引用,然后设置DataGrid 的editedItemPosition 和selectedIndex。这种方式让组件担心清理 itemEditor。

var grid:DataGrid = listData.owner as DataGrid;
grid.editedItemPosition = null;
grid.selectedIndex = -1;
于 2010-09-29T13:44:46.530 回答
0

itemEditEnd当您在项目编辑器外部单击时将触发。如果是自己调度,则需要在调度前rowIndex 将事件的属性设置为合适的值。

于 2010-09-29T07:33:16.300 回答