среда, февраля 06, 2008

Событие от компонентов itemRenderer. Flex

Есть компонент список List, элементы которого являются компонентами (MXML) и задаются через свойство itemRenderer.
В свойство dataProvider указан [Bindable] массив ArrayCollection.
Каждый из элементов этого массива - объект [Bindable] класса с набором свойств, который порождается от EventDispatcher. В компонентах элементов списка свойства этого объекта указаны как источники данных: text="{data.name}" и change="data.text=text_input.text;".

При работе со списком, происходят изменения свойств любого из объектов списка. Свойства объектов элементов массива обновляются, меняют свои значения. Все хорошо.

Теперь, требуется получать событие обновления какого-либо элемента.
Я пошел обычным путем - подписался на прослушивание события PropertyChangeEvent.PROPERTY_CHANGE для каждого экземпляра элемента массива при его создании. Приблизительный код:

Таким образом, при каждом изменении какого-либо элемента списка отрабатывает событие, предоставляющее полную информацию об изменении.
Возможно существует другой способ получить это событие - я пока не нашел.

Комментариев нет: