Flex数据绑定问题

时间:2010-04-01 08:30:42

标签: flex data-binding

<mx:Label text="{(item1 as INewsItem).displayName}"/>

对于Flex中的上述代码,我收到此警告:

:数据绑定无法检测到item1的分配。
为什么?如何解决?

3 个答案:

答案 0 :(得分:2)

如果您定义[Bindable] function get item1(),则还需要定义function set item1(),否则Flex将不知道何时发送更改事件。或者您可以手动调度更改事件:

[Bindable(event="item1Change"]
public function get item1() { return ... }

每当item1上的某些内容发生变化时,您都会调度一个事件:

dispatchEvent(new Event("item1Change"));

答案 1 :(得分:1)

显示警告,因为更新item1时,数据绑定不会自动刷新。如果您确实需要此行为,则无法使用此数据绑定,并且必须在item1更改时手动更新标签文本。

答案 2 :(得分:1)

感谢Prutswonder 实际上,item1被声明为getter,
像这样:

public function get item1() 

所以,我必须像这样前置:

[Bindable] public function get item1()