使用ItemRenderer的DataGridColumn,如何正确设置dataProvider?

时间:2009-08-26 21:58:11

标签: datagrid flex3 itemrenderer dataprovider

我正在构建一个DataGrid来显示类似于以下XML的数据:

<foo>
    <entities>
        <entity>
            <name>Jim</name>
            <trend>
                <quantity>10</quantity>
                <quantity>20</quantity>
                <quantity>30</quantity>
            </trend>
       </entity>
       ...
    </entities>
</foo>

我们的想法是让网格在一列中显示名称,并在第二列中显示基于数量的小图形(迷你图)。我有一个需要ArrayList作为dataProvider的迷你图组件。我的网格设置如此:

<!-- XML from dataservice transformed into XMLListCollection -->
<mx:XMLListCollection id="xmlcol" source="{xmlData.entities.entity}"/>
<mx:DataGrid id="thegrid" dataProvider="{xmlcol}">
    <mx:columns>
        <mx:DataGridColumn id="name" dataField="name" headerText="Name" />
        <mx:DataGridColumn id="spark" dataField="trend.quantity" header="Trend">
            <mx:itemRenderer>
                <mx:Component>
                     <mycomponents:Sparkline dataProvider="?????????" />
                </mx:Component>
            </mx:itemRenderer>
        </mx:DataGridColumn>
   </mx:columns>
</mx:DataGrid>

将Sparkline组件的dataProvider设置为数量数组的最佳方法(或者无论如何!)是什么?我是否需要封闭DataGridColumn中的dataField?我的方法都错了吗?

与往常一样,提前感谢您提供的任何帮助。

TB

1 个答案:

答案 0 :(得分:0)

看看这是否解决了您的问题:

的dataProvider = “{} data.trend.quantity”