我在Hierrachical视图中遇到了AdvancedDataGrid的问题

时间:2011-04-18 17:01:15

标签: flex flex4 advanceddatagrid

我的AdvancedDataGrid出现了一个奇怪的问题。我有一个非常基本的(没有多余的)XML文件,我正在从我的ADG中提取数据并尝试创建一个分层视图。它主要工作,但当我的顶级节点只有一个孩子时,我看到文件夹图标,但没有twistee看到第二级数据。如果没有第二级或2级或更多,它看起来和工作正常。有没有人遇到过这种情况或者说我设置错了?这是一些代码:

XML:

<root>
<item item_id="4" title="First Document Title 33.1" author="Mark Pusateri" pubDate="4/10/2011">
    <tag name="Advisory" type="Service line"/>
    <tag name="GSS" type="Function/source"/>
    <tag name="Global" type="Area"/>
</item>
<item item_id="5" title="First Document Title 4" author="Mark Pusateri" pubDate="5/11/2011">
    <tag name="Americas" type="Area"/>
</item>
<item item_id="6" title="First Document Title 5" author="Mark Pusateri" pubDate="6/12/2012">
    <tag name="Japan" type="Area"/>
</item>
<item item_id="7" title="First Document Title 6" author="Mark Pusateri" pubDate="3/13/2009"/>
<item item_id="8" title="First Document Title 6.1" author="Mark Pusateri" pubDate="3/14/2011"/>
<item item_id="9" title="First Document Title 7" author="Mark Pusateri" pubDate="4/9/2011">
    <tag name="Americas" type="Area"/>
</item>

MXML:

<mx:AdvancedDataGrid id="mainADG" width="100%" height="100%">
        <mx:dataProvider>
            <mx:HierarchicalData source="{mainArrayColl}"
                                 childrenField="tag" />
        </mx:dataProvider>
        <mx:groupedColumns>
            <mx:AdvancedDataGridColumn headerText="Title" dataField="title"/>
            <mx:AdvancedDataGridColumn headerText="Author" dataField="author"/>
            <mx:AdvancedDataGridColumn headerText="Publication date" dataField="pubDate"/>

            <mx:AdvancedDataGridColumnGroup headerText="Tags" >
                <mx:AdvancedDataGridColumn headerText="Name" dataField="name"/>
                <mx:AdvancedDataGridColumn headerText="Type" dataField="type"/>
            </mx:AdvancedDataGridColumnGroup>

        </mx:groupedColumns>
    </mx:AdvancedDataGrid>

1 个答案:

答案 0 :(得分:1)

@ 符号与数据字段一起使用,因为所有这些都是属性

<mx:AdvancedDataGrid id="mainADG" width="100%" height="100%">         
    <mx:dataProvider>             
        <mx:HierarchicalData source="{mainArrayColl}" />     
    </mx:dataProvider>         
    <mx:groupedColumns>           
        <mx:AdvancedDataGridColumn headerText="Title" dataField="@title"/>             
        <mx:AdvancedDataGridColumn headerText="Author" dataField="@author"/>             
        <mx:AdvancedDataGridColumn headerText="Publication date" dataField="@pubDate"/>              

        <mx:AdvancedDataGridColumnGroup headerText="Tags" >                 
            <mx:AdvancedDataGridColumn headerText="Name" dataField="@name"/>                 
            <mx:AdvancedDataGridColumn headerText="Type" dataField="@type"/>             
        </mx:AdvancedDataGridColumnGroup>
    </mx:groupedColumns>     
</mx:AdvancedDataGrid>

我删除 childrenField =“tag” b / c它对我有效

希望有所帮助