У меня проблемы с моим AdvancedDataGrid в иерархическом представлении - PullRequest
0 голосов
/ 18 апреля 2011

У меня странная проблема с моей AdvancedDataGrid. У меня есть довольно простой (без излишеств) XML-файл, из которого я извлекаю данные и пытаюсь создать иерархическое представление в моем ADG. В основном это работает, но когда у моего узла верхнего уровня только один дочерний элемент, я вижу значок папки, но не вижу ничего, чтобы увидеть второй уровень данных. Если нет второго уровня или 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 Ответ

1 голос
/ 19 апреля 2011

Используйте @ символ с Поле данных , потому что все они атрибут

<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, его работы для меня

надеется, что это поможет

...