Я не уверен, что я неправильно понимаю привязку в Flex. Я использую Cairngorm framework. У меня есть следующий компонент с кодом типа:У вас возникли проблемы со связыванием
[Bindable]
var _model:LalModelLocator = LalModelLocator.getInstance();
....
<s:DataGroup dataProvider="{_model.friendsSearchResults}"
includeIn="find"
itemRenderer="com.lal.renderers.SingleFriendDisplayRenderer">
<s:layout>
<s:TileLayout orientation="columns" requestedColumnCount="2" />
</s:layout> </s:DataGroup>
в модели локатора:
[Bindable]
public var friendsSearchResults:ArrayCollection = new ArrayCollection();
Внутри визуализации элемента есть кнопка, которая вызывает команду и внутри результатов команды есть строка, как это:
model.friendsSearchResults = friendsSearchResults;
Ввод точки останова и пошагового код, который я подтвердил, что это, как будет вызван и friendsSearchResults обновляется.
Насколько я понимаю, если я обновляю переменную с возможностью связывания, она должна автоматически повторно отобразить s: DataGroup, у которой есть dataProvider этой переменной.
Спасибо за отличную проницательность, он помог обнаружить источник проблемы, я делал что-то вроде: var friendsSearchResults: ArrayCollection = model.friendsSearchResults; но это заставляло новую переменную просто указывать на одну и ту же, даже если бы я сделал: model.friendsSearchResults = friendsSearchResults; после этого он действительно не задавал модельную переменную. – Tam