Всем добрый день.
Привожу примеры двух вариантов представления MenuBar:

Код AS3:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="vertical"
verticalAlign="middle"
backgroundColor="white" >
<mx:MenuBar width="100%" labelField="@label" itemClick="eventItemClick(event)" >
<mx:Script>
<![CDATA[
import mx.events.MenuEvent;
import mx.controls.Menu;
import mx.controls.MenuBar;
public static const FILE_NEW_MAP:String = "fileNewMap";
public static const VIEW_CELL_GRID:String = "viewCellGrid";
public static const VIEW_TILE_GRID:String = "viewTileGrid";
private function eventItemClick(e:MenuEvent):void
{
var itemData:String = e.item.@data;
trace("itemData = " + itemData);
}
]]>
</mx:Script>
<mx:XMLList>
<menuitem label="File">
<menuitem label="New..." data="{ FILE_NEW_MAP }"/>
</menuitem>
<menuitem label="View">
<menuitem label="Show Tile Grid" type="check" data="{ VIEW_TILE_GRID }"/>
<menuitem label="Show Cell Grid" type="check" data="{ VIEW_CELL_GRID }"/>
</menuitem>
</mx:XMLList>
</mx:MenuBar>
</mx:Application>

Код AS3:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="vertical"
verticalAlign="middle"
backgroundColor="white" >
<mx:MenuBar width="100%" labelField="@label" itemClick="eventItemClick(event)" >
<mx:Script>
<![CDATA[
import mx.events.MenuEvent;
import mx.controls.Menu;
import mx.controls.MenuBar;
public static const FILE_NEW_MAP:String = "fileNewMap";
public static const VIEW_CELL_GRID:String = "viewCellGrid";
public static const VIEW_TILE_GRID:String = "viewTileGrid";
private function eventItemClick(e:MenuEvent):void
{
var itemData:String = e.item.@data;
trace("itemData = " + itemData);
}
]]>
</mx:Script>
<mx:XMLList>
<menuitem label="File">
<menuitem label="New..." data="{ FILE_NEW_MAP }"/>
</menuitem>
<menuitem label="View">
<menuitem label="Show Tile Grid" type="check" data="viewCellGrid"/>
<menuitem label="Show Cell Grid" type="check" data="viewTileGrid"/>
</menuitem>
</mx:XMLList>
</mx:MenuBar>
</mx:Application>
отличия в этих двух примерах лишь в том, что в первом используются константы data="{ VIEW_TILE_GRID }" и data="{ VIEW_CELL_GRID }", а во втором сразу строки data="viewCellGrid" и data="viewTileGrid".
А вопрос в том, почему в первом примере, с использованием констант, параметр data для пункта меню File->New становится равен "" вместо ожидаемого "fileNewMap", а во втором варианте работает корректно
