在这里忍受我。我有一个奇怪的设置来完成我需要的东西。我基本上有一个 AdvancedDataGrid,它显示 WebService 返回的数据。数据为 XML 格式:
<children label="parent 1" value="3100">
<children label="child 1" value="1100">
<children label="grandchild 1" value="200">
</children>
<children label="grandchild 2" value="300">
</children>
<children label="grandchild 3" value="600">
</children>
</children>
<children label="child 2" value="2000">
<children label="grandchild 4" value="1200">
</children>
<children label="grandchild 5" value="800">
</children>
</children>
</children>
<children label="parent 2" value="1000">
<children label="child 3" value="1000">
<children label="grandchild 6" value="300">
</children>
<children label="grandchild 7" value="700">
</children>
</children>
</children>
我在 WebService 结果处理程序中将 XML 转换为 HierarchicalData 对象。我还为 AdvancedDataGrid 动态构建列,因为它用于根据用户输入显示不同的列。但是,我还需要在 AdvancedDataGrid 的底部显示总计“行”。我无法弄清楚如何将我的 XMLListCollection 转换为 GroupingCollection,从而以这种方式创建总计行,因此,我实际上计算了 WebService 中的总计并将其作为 XML 中的节点返回:
<totals value="4100" />
我使用这个“总计”数据填充第二个 AdvancedDataGrid,它没有位于第一个 ADG 正下方的标题,因此它“看起来”是第一个 ADG 的“最后一行”。两个 ADG 都使用相同的可绑定列数组:
<mx:AdvancedDataGrid id="reportADG" dataProvider="{__model.reportData}"
columns="{__model.adgDrillColumns}" width="100%" height="100%" />
<mx:AdvancedDataGrid id="reportTotalsADG"
dataProvider="{__model.reportTotalsData}"
folderOpenIcon="{null}" folderClosedIcon="{null}"
disclosureClosedIcon="{null}" disclosureOpenIcon="{null}"
defaultLeafIcon="{null}" showHeaders="false"
selectable="false" rowCount="1"
columns="{__model.adgColumns}" width="100%" />
但是,如果在第一个 ADG 中调整列的大小,我无法找到让第二个 ADG 中的列也调整大小的方法。我能做些什么?