Dispatch Bindable event
<?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" xmlns:s="library://ns.adobe.com/flex/spark"> <mx:ArrayCollection id="fruitCollection"> <mx:String>A</mx:String> <mx:String>B</mx:String> <mx:String>C</mx:String> </mx:ArrayCollection> <mx:Script> private var myStringValue:String; [Bindable(event="myStringValueChanged")] private function isOrangeChosen():Boolean { return myStringValue == "Orange"; } public function get selectedFruit():String { return myStringValue; } public function set selectedFruit( value:String ):void { myStringValue = value; dispatchEvent( new Event( "myStringValueChanged" ) ); } </mx:Script> <mx:Label text="Select a Fruit:" /> <s:HGroup> <s:DropDownList id="fruitCB" dataProvider="{fruitCollection}" change="{selectedFruit = fruitCB.selectedItem}"/> <mx:Button label="eat the orange." enabled="{isOrangeChosen()}"/> </s:HGroup> </mx:Application>