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

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

Ответы [ 3 ]

2 голосов
/ 11 октября 2010

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

Объекты

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

0 голосов
/ 20 мая 2014

Использовать gridItemEditorSessionSave

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

и в ActionScript

protected function dataGrid_gridItemEditorSessionSaveHandler(event:GridItemEditorEvent):void
            {
                Alert.show("Edited");
            }
0 голосов
/ 11 октября 2010

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

...