說我有以下的自定義組件:初始化屬性
<s:Group xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx">
<fx:Script>
<![CDATA[
[Bindable]
public var prop:String;
private function formatProp() : String {
return "Hello, " + prop;
}
]]>
</fx:Script>
<s:Label text="User: {prop}"/>
<s:Label text="Greeting: {formatProp()}"/>
</s:Group>
如果我把它添加到我的應用程序是這樣的:
<local:MyComponent prop="Hello"/>
結果是這樣的:
User: Mark Greeting: Hello, null
看來Flex在我的自定義組件後面設置了prop
已經初始化了子標籤,所以它依賴於屬性更改事件來設置用戶標籤。
是否有一種優雅的方式讓Flex在開始評估綁定之前等待我的所有組件屬性被設置?
注:我意識到formatProp函數是微不足道的,可以內聯包含,但這只是一個簡單的例子。
你嘗試從creationComplete事件中運行你的formatProp metehod嗎? – Robusto 2010-04-16 15:33:47