Как получить предварительно отредактированное значение ячейки сетки данных для итератора в гибком

Я написал специальный редактор элементов для сетки данных в flex. Мой вопрос заключается в том, как получить предварительно отредактированное значение ячейки таблицы данных после инициализации редактора элементов, а также в коде редакторов пользовательских элементов.

2 ответа

Я не думаю, что можно получить старое значение, когда вы находитесь в редакторе элементов. Я сделал бы это вручную, прослушивая событие 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, вам нужно изменить "mx.controls.TextInput" для вашего пользовательского itemRenderer.

Другие вопросы по тегам