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

У меня есть редактируемая сетка, и я хотел бы обновить значения на основе отредактированной ячейки, и я делаю это в itemEditEndHandler, так что, когда они заканчивают редактирование ячейки, я обновляю другие ячейки, которые зависят от нее. единственная проблема в том, что в itemEditEndHandler новое значение еще не прописано. Если я попытаюсь получить значение ячейки, я обнаружу, что она по-прежнему дает мне старое значение, а не новое значение, которое я ввел.


person Linda    schedule 11.10.2010    source источник


Ответы (3)


Прослушивание collectionChange в dataProvider DataGrid.

ListCollectionView объекты, т. е. объекты ArrayCollection и XMLListCollection, отправляют Событие CollectionEvent.COLLECTION_CHANGE при каждом изменении коллекции. Проверьте свойство kind. отправленного события - если это CollectionEventKind.UPDATE, это означает, что один или несколько элементов были обновлены. Массив элементов событие будет содержать обновленные элементы.

person Amarghosh    schedule 11.10.2010

Если ваша сетка данных использует dataProvider, который является ArrayCollection, вы можете вызвать его метод refresh() в обработчике, запускаемом событием изменения itemEditor, а затем вызвать метод invalidateList() dataGrid.

person Robusto    schedule 11.10.2010
comment
Спасибо. Я также пытаюсь получить доступ к определенным значениям в ячейке с помощью ListCollectionView(dgViewPreview.dataProvider).getItemAt(rowIndex)[Datafield], но он не возвращает правильные значения каким-либо другим способом. я использую это в itemeditendhandler. - person Linda; 11.10.2010

Используйте gridItemEditorSessionSave

<s:DataGrid gridItemEditorSessionSave="dataGrid_gridItemEditorSessionSaveHandler(event)" >
...
...
...
</s:DataGrid>

и в экшнскрипте

protected function dataGrid_gridItemEditorSessionSaveHandler(event:GridItemEditorEvent):void
            {
                Alert.show("Edited");
            }
person HimalayanCoder    schedule 20.05.2014