Итак, я пытался загрузить данные из файла XML в сетку данных. Проект находится в рамках Cairngorm. XML-файл находится в папке веб-материалов. У меня есть вызов HTTPService в папке Services.
<mx:HTTPService
id = "getCategory"
url = "assets/CategoryDept21Class1.xml"
resultFormat = "e4x"
/>
Когда я делаю выбор в одном dataGrid, он должен заполнить другой dataGrid данными из XML-файла. Ниже приведена сетка данных классов. Когда я нажимаю на класс, он должен заполнить следующую сетку данных.
<mx:DataGrid rowCount="10" enabled="true"
dataProvider="{classList}"
verticalScrollPolicy="on"
click = "onClass()"
id="classes" width="192" top="73" left="253" height="225">
<mx:columns>
<mx:DataGridColumn headerText="#" dataField="merchandiseClassNumber" width="50"/>
<mx:DataGridColumn headerText="Class Name" dataField="merchandiseClassDescription" width="150"/>
</mx:columns>
</mx:DataGrid>
Это методы, которые будут запускаться.
private function selectClass(evt:ResultEvent):void{
//this.categoryList = new XMLListCollection(evt.result.resultSet);
this.categoryList= evt.result.resultSet.MerchandiseAssortmentCategory;
var request:AMTCategoryEvent;
CairngormEventDispatcher.getInstance().dispatchEvent(request);
}
private function onClass():void{
//Alert.show("you just clicked on a class ");
var event:AMTCategoryEvent = new AMTCategoryEvent();
CairngormEventDispatcher.getInstance().dispatchEvent(event);
}
вот как я определил getCategory () в своем делегате
public function getCategory() : void
{
service = ServiceLocator.getInstance().getHTTPService("getCategory") as HTTPService;
//Alert.show(service.url);
var token : AsyncToken = service.send();
token.addResponder(responder);
}
и это то, что у меня есть в моем getCategoryCommand.
public function execute(event: CairngormEvent) : void{
var categoryEvent: AMTCategoryEvent = event as AMTCategoryEvent;
var deleg:Delegate = new Delegate(this);
deleg.getCategory();
//deleg.getCategory(categoryEvent.deptNumber, categoryEvent.classNum);
}
public function result(info:Object) :void{
trace("Get Category: Success");
// __model.categoryList = new XMLList(info.result.resultSet.MerchandiseAssortmentCategory);
var xmlbleh:XMLList=info.result.resultSet.MerchandiseAssortmentCategory.lastResult;
mx.controls.Alert.show(xmlbleh.toXMLString());
__model.categoryList = new XMLListCollection(XMLList(info.result.resultSet.MerchandiseAssortmentCategory.lastResult));
}
По какой-то причине он не считывает данные из XML-файла в сетку данных. Это мой первый вопрос на этом сайте. Я не знаю, ясен ли мой вопрос. Но как мне это сделать? Спасибо :)