I have an AdvancedDataGrid that is displaying information in a hierarchical fashion; a list of sites and their associated sub areas.
The data structure is:
public interface ISite
{
function get displayName():String
function get siteCode():String
function get name():String
function get subAreas():ArrayCollection
}
public interface ISubArea
{
function get displayName():String
function get siteCode():String
function get name():String
function get subAreaCode():String
}
There are three total pieces of information that I want to display within the grid. At the root of the tree I want to show the Site's displayName. For the SubArea'S I want to display two columns, one for siteCode and the other for name.
I have gotten pretty close unfortunately all three columns are displayed in the child rows. I have not figured out how to remove the Site's displayName column from the child rows.
Any thoughts about how to do this? Here is a screen grab depicting the results so far and annotated with the desired result. The MXML code that is producing this result can be found after the image.
<mx:AdvancedDataGrid width="100%" height="100%" showHeaders="false" textAlign="left">
<mx:dataProvider>
<mx:HierarchicalData source="{pmodel.sites}" childrenField="subAreas"/>
</mx:dataProvider>
<mx:columns>
<mx:AdvancedDataGridColumn dataField="displayName"/>
<mx:AdvancedDataGridColumn dataField="siteCode"/>
<mx:AdvancedDataGridColumn dataField="name"/>
</mx:columns>
<mx:rendererProviders>
<mx:AdvancedDataGridRendererProvider
depth="1"
columnIndex="0"
columnSpan="0"
renderer="mx.controls.advancedDataGridClasses.AdvancedDataGridGroupItemRenderer"/>
</mx:rendererProviders>
</mx:AdvancedDataGrid>