操作XMLListCollection中的元素

一、添加
1、xml数据格式:<baseData><record><dataid>27</dataid><dataName>bb</dataName></record></baseData>
此格式为后台数据返回的

2、model.baseDataListXml类型为XMLListCollection

3、插入:
var newRecord: XML = XML((data as ResultEvent).result.toString());
model.baseDataListXml.addItem(newRecord.record);

技巧:当XMLListCollection中没有内容时,使用addItem插入不能显示,解决方法如下:
if(model.baseDataListXml.length == 0){
model.baseDataListXml = new XMLListCollection(XMLList("<> </>"));
}


二、修改
1、得到要修改的行
var selItem: Object = model.baseDataListXml.getItemAt(model.baseDataSelIndex);
2、将此行的数据改变
selItem.dataName = newValue;
3、用itemUpdated改变数据源
model.baseDataListXml.itemUpdated(selItem);


三、删除
需求:datagrid的删除列为自定义itemrender
1、监听itemclick事件,得到要删除的行
2、在itemrender中得到data.dataid,即删除的ID,并将此ID记到model中
3、删除:model.baseDataListXml.removeItemAt(model.baseDataSelIndex);


四、对于多级的删除
var datapc:DefaultDataDescriptor = new DefaultDataDescriptor();
datapc.removeChildAt(model.itemXML.parent(), model.itemXML, 0);

你可能感兴趣的:(xml)