OK, this is fairly buggy but it does show you can gray out a menu item from actionscript (Check the "Down" submenu item after clicking the "Lock / Unlock" menu item). I will leave the bug fixes and extras to you :-)...
<?xml version="1.0" encoding="utf-8"?> <mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" creationComplete="onComplete(event)"> <mx:Script> <![CDATA[ import mx.events.MenuEvent; import mx.events.FlexEvent; import mx.controls.Menu; import mx.controls.Alert; public var myMenu:Menu = new Menu(); public function onComplete(event:FlexEvent):void { myMenu = Menu.createMenu(this, myMenuData, false); myMenu.labelField="@label"; myMenu.show(100,100); myMenu.addEventListener(MenuEvent.ITEM_CLICK, menuClickHandler); } private function menuClickHandler(event:MenuEvent):void { if(event.label == "Lock / Unlock") { myMenuData..menuitem.(attribute("id")=="menuDown")[EMAIL PROTECTED] = false; myMenu = Menu.createMenu(this, myMenuData, false); myMenu.labelField="@label"; myMenu.show(100,100); } } ]]> </mx:Script> <mx:XML format="e4x" id="myMenuData"> <root> <menuitem id="menuDrill" label="Drill =>" > <menuitem id="menuDown" label="Down" toggled="false" enabled="true"/> <menuitem id="menuUp" label="Up" toggled="false" enabled="true"/> </menuitem> <menuitem type="separator"/> <menuitem label="Lock / Unlock" type="check" toggled="false"/> <menuitem type="separator"/> <menuitem label="Reset Graph" toggled="false"/> </root> </mx:XML> </mx:Application>

