【发布时间】:2009-02-21 12:05:03
【问题描述】:
我为 flex 中的数据网格编写了一个自定义项编辑器。我的问题是如何在项目编辑器初始化后以及在自定义项目编辑器代码中检索数据网格单元格的预编辑值。
【问题讨论】:
标签: apache-flex datagrid return itemeditor
我为 flex 中的数据网格编写了一个自定义项编辑器。我的问题是如何在项目编辑器初始化后以及在自定义项目编辑器代码中检索数据网格单元格的预编辑值。
【问题讨论】:
标签: apache-flex datagrid return itemeditor
我认为一旦进入项目编辑器就不可能获得旧值。我会通过监听“itemEditBeginning”事件并用单元格的值保存一个变量来手动执行此操作。然后,您可以通过项目编辑器中的“parent”、“parentDocument”或“outerDocument”属性引用该值,具体取决于您使用的是内联项目编辑器还是单独的类。
【讨论】:
在“itemEditEnd”事件中,您可以访问旧值:
var oldValue:String = event.currentTarget.dataProvider[event.rowIndex].VALUE_FIELD;
新值如下:
var txtControl:mx.controls.TextInput = event.currentTarget.itemEditorInstance as mx.controls.TextInput;
var newValue:String = txtControl.text;
如果您使用的是自定义 itemRenderer,您需要为自定义 itemRenderer 更改“mx.controls.TextInput”。
【讨论】: