2
我有幾個組件,我希望通過將用戶名傳遞給函數來啓用按鈕。我想動態綁定按鈕上的「enabled」屬性,以便如果「somethingChanged」事件觸發,可能會啓用或禁用按鈕。將Flex組件綁定到類函數
但是,我不確定在哪裏觸發「somethingChanged」事件。我可能需要從應用程序中的多個地方觸發「somethingChanged」事件。這是可能的綁定靜態函數?
我是以正確的方式去做還是有更好的解決方案?
EventManager.as
public class EventManager():void
{
[Bindable(event="somethingChanged")]
public static function hasAccess(myVal:String):Boolean
{
}
}
testform1.mxml
<s:Button id="testButton1" enabled="{EventFunction.hasAccess("john")}" />
<s:Button id="testButton2" enabled="{EventFunction.hasAccess("mary")}" />
<s:Button id="testButton3" enabled="{EventFunction.hasAccess("beth")}" />
testform2.mxml
<s:Button id="testButton4" enabled="{EventFunction.hasAccess("tom")}" />
<s:Button id="testButton5" enabled="{EventFunction.hasAccess("bill")}" />
<s:Button id="testButton6" enabled="{EventFunction.hasAccess("jerry")}" />
這種方法可行,但我會在這裏避免Singleton模式。只需創建一個擴展EventDispatcher的類並將其聲明爲需要設置的組件的公共變量。 –
我同意單身人士。 –
您不需要在屬性上指定綁定事件,只需在setter上指定即可。 – sharvey