I think this is a great idea and it will become something common in the future.
Bytz@'s Tech Blog
<mx:Script>
<![CDATA[
[Bindable] private var externalXML:XML;
private function loadXML(XMLfilename:String,ParentObject:Container):void{
var loader:URLLoader = new URLLoader();
var request:URLRequest = new URLRequest(XMLfilename);
loader.load(request);
loader.addEventListener(Event.COMPLETE, onComplete);
function onComplete(event:Event):void {
var loader:URLLoader = URLLoader(event.target);
externalXML = new XML(loader.data);
for each (var link:XML in externalXML.children())
{
var lb:LinkButton=new LinkButton();
lb.label=link.text;
lb.data=link.value;
lb.addEventListener(MouseEvent.CLICK,
function (e:Event):void{navigateToURL(new URLRequest(e.target.data));});
ParentObject.addChild(lb);
}
}
}
]]>
</mx:Script>
<mx:VBox id="myContainer" initialize="loadXML('data.xml',myContainer)">
<links>
<link>
<text>Google</text>
<value>http://www.google.ro</value>
</link>
</links>
