Когда вы создаете свойство [Bindable]
, Flex будет читать геттер всякий раз, когда вызывается его установщик (т. Е. Когда свойство обновляется);вы не объявили никакого установщика, и, следовательно, у Flex нет способа узнать, что значение свойства было обновлено.
Вы должны определить как метод установки, так и метод получения , чтобы использовать тег [Bindable] со свойством.Если вы определяете только метод установки, вы создаете свойство только для записи, которое не можете использовать в качестве источника выражения привязки данных.Если вы определяете только метод получения, вы создаете свойство только для чтения, которое вы можете использовать в качестве источника выражения привязки данных, не вставляя тег метаданных [Bindable].Это аналогично тому, как вы можете использовать переменную, определенную с помощью ключевого слова const, в качестве источника для выражения привязки данных.
Может быть, вы можете определить пустой сеттер и вызывать его всякий раз, когда обновляете a или b.
public function set times(ac:ArrayCollection):void { }
//somewhere else in the code:
a = someArrayCol;
/**
* this will invoke the setter which will in turn
* invoke the bindable getter and update the values
* */
times = null;
Только что заметил, что вы используете Bindable в классе вместосвойство: когда вы используете тег Bindable таким образом , он делает
пригодным для использования в качестве источника выражения привязки всех открытых свойств, которые вы определили как переменные, и всех открытых свойств, которыеопределяются с использованием как метода установки, так и метода получения .
Таким образом, если вы не определите метод установки, свойство не может быть привязано, даже если весь класс объявлен как привязываемый.