我的flex数据网格有一个XMLListCollection作为其数据提供者。
AlivePDF的网格期望数据网格的数据提供者是一个数组。
有没有办法在没有遍历每个XML节点的情况下对此表进行PDF并填充一组对象以提供给AlivePDF的Grid?
还有其他更好的解决方案,我可以尝试将此表格转换为PDF格式吗?
谢谢!
答案 0 :(得分:1)
ListCollectionView
(XMLListCollection
基类)有toArray()方法
所以,只需new Grid(dataProvider.toArray(),...)
答案 1 :(得分:0)
以下示例代码段可以帮助您: 这里dataGrid有2列。而chilledWaterLoopXml是包含数据的xml ..
var gridColumnFirstcol:GridColumn = new GridColumn('Design ΔT','designDelta', 40, Align.LEFT, Align.LEFT);
var gridColumnSecondcol:GridColumn = new GridColumn('Chilled Water', 'chilledWtrPump', 40, Align.LEFT, Align.LEFT);
var result:ArrayCollection=new ArrayCollection();
for(var i:int =0;i<chilledWaterLoopXml.children().length();i++)
{
var resultant:Object = new Object();
resultant["designDelta"]=chilledWaterLoopXml.child(i).designDelta;
resultant["chilledWtrPump"]=chilledWaterLoopXml.child(i).chilledWtrPump;
result.addItem(resultant);
}
var grid:org.alivepdf.data.Grid = new org.alivepdf.data.Grid( result.toArray() , 100,50, new RGBColor(0xD4CCC5), new RGBColor(0x66C66C),0, new RGBColor(0x000000),1,Joint.ROUND);
grid.columns = columns;
pdf.addGrid(grid);