Используйте xmlnamespace (xmlns) для доступа к файлу mxml в исходной папке. Я создал приложение, включающее xmlns = "*" (* означает, что вы можете получить доступ к любому компоненту в исходной папке) для доступа к компоненту myEvenList.Я передаю значение n здесь. Проверьте пример. HTH.
togglePanelCount.mxml
<?xml version="1.0" encoding="utf-8"?>
<mx:Application name="ToggleButtonBar_toggleOnClick_test"
xmlns:mx="http://www.adobe.com/2006/mxml"
layout="vertical"
verticalAlign="top"
backgroundColor="white" xmlns:eventList="*"> <mx:ToggleButtonBar id="toggleButtonBar"
dataProvider="{viewStack}" /><mx:ViewStack id="viewStack"
width="100%"
height="100%">
<eventList:myEventList n="5" id="List1"/>
<eventList:myEventList n="20" id="List2"/>
</mx:ViewStack></mx:Application>
myEvenList.mxml
<?xml version="1.0" encoding="utf-8"?><mx:Canvas xmlns:mx="http://www.adobe.com/2006/mxml" creationComplete="createPanels()"><mx:Script>
<![CDATA[
import mx.controls.Alert;
import mx.containers.Panel;
public var n:int;
public function createPanels():void{
Alert.show("in create panel");
for(var i:int =0 ;i<n;i++){
var panel:Panel = new Panel();
panel.title = "panel"+(i+1);
panelList.addChild(panel);
}
}
]]>
</mx:Script><mx:VBox id="panelList" /></mx:Canvas>
PS: Наличие n в качестве общедоступного атрибута само по себе дает возможность передать количество панелей. Даже в теге mx: Script в приложении вы можете создать экземпляр объекта myEventList и установить значение n вместо использования тегов mxml.