今天在用flash做一个简单的地图展示功能,需要把xml绑定到DataGrid,完成后,又仔细看了几遍,发现列的顺序不对,准确的说是不稳定,不固定,于是在网上查了一下,没有相关的内容。于是自己研究了一下,现把代码贴上,供遇到此问题的朋友参考。
var componentProvider:DataProvider;
var c1:DataGridColumn = new DataGridColumn("店铺名称");
var c2:DataGridColumn = new DataGridColumn("地址");
var c3:DataGridColumn = new DataGridColumn("店铺电话");
c1.headerText = "店铺名称";
c2.headerText = "地址";
c3.headerText = "店铺电话";
datawindow.grid.addColumn(c1);
datawindow.grid.addColumn(c2);
datawindow.grid.addColumn(c3);
// 技巧之处:自己添加的列的标题要与xml中节点名称一致,然后按需要的顺序,依次添加即可。后面附有xml文档片断。
detailXML = new XML(xmlLoader.data);
componentProvider = new DataProvider(detailXML);
datawindow.grid.dataProvider = componentProvider;
代码不是很全,但是主体完整,相信会有帮助的。
附xml文档片断:
<?xml version="1.0" encoding="utf-8"?>
<stores>
<store>
<店铺名称>王府井格蕾芬店</店铺名称>
<地址>东城区王府井大街48号皇冠假日酒店1楼</地址>
<店铺电话>010-65267175</店铺电话>
</store>
</stores>