Flex Cairngorm - Как обновить модель, не теряя фокуса в Datagrid?
-
22-09-2019 - |
Вопрос
В моем проекте Flex с использованием Cairngorm у меня есть модель, в которой хранится связываемая коллекция массивов, отображаемая в DataGrid.Моя проблема возникает, когда модель обновляется ответчиком (из службы Java, после события "update"), потому что фокус, расположенный в ячейке DataGrid, теряется (позиция прокрутки также теряется).Итак, я извлекаю позицию перед обновлением с помощью DataGridEvent.ITEM_FOCUS_IN событие :
myModel.focusedCell.rowIndex = e.rowIndex;
myModel.focusedCell.columnIndex = e.columnIndex;
Но, откуда восстановить эти параметры?Как запустить это обновление только при обновлении модели?
Заранее благодарю.
Решение
для информации, я решил свою проблему следующим образом:
чтобы избежать потери фокуса (или, скорее, следующей редактируемой ячейки), необходимо обновить модель без повторного создания ее экземпляра.
После этого мы должны устранить проблему со свитком, как описано в следующем посте:Как привязать компонент DataGrid к данным без прокрутки вверх?