У меня есть компонент, в котором я раскрываю свойство «вопросы» со следующим кодом:
private var _questions:ArrayCollection;
private var questionsChanged:Boolean;
[Bindable("questionsChanged")]
public function get questions():ArrayCollection {
return _questions;
}
public function set questions(value:ArrayCollection):void {
if (_questions != value) {
_questions = value;
questionsChanged = true;
invalidateProperties();
dispatchEvent(new Event("questionsChanged"));
}
}
В этом компоненте я использую commitProperties() для реализации своей логики.
Я использую Cairngorm, и «вопросы» находятся в модели и, следовательно, определены как источник для привязки данных.
Когда размер «вопросов» ArrayCollection изменяется в другом месте приложения, он не вызывает метод установки в компоненте, который является местом назначения для привязки данных.
Может ли кто-нибудь помочь мне понять, почему это так?
[Bindable(event="questionsChanged")]
? - person bedwyr   schedule 15.12.2010