を検出することができます:Adobe Flex 4 * Creating column groupsはと、AdvancedDataGridは自動的に私は、このリンクから例をしようとしていたAdvancedDataGridColumnGroup
データは、ここで
import mx.collections.ArrayCollection;
[Bindable]
private var dpHierarchy:ArrayCollection = new ArrayCollection([
{Region:"Southwest", Territory:"Arizona",
Territory_Rep:"Barbara Jennings",
Revenues:{Actual:38865, Estimate:40000}},
{Region:"Southwest", Territory:"Arizona",
Territory_Rep:"Dana Binn",
Revenues:{Actual:29885, Estimate:30000}},
{Region:"Southwest", Territory:"Central California",
Territory_Rep:"Joe Smith",
Revenues:{Actual:29134, Estimate:30000}},
{Region:"Southwest", Territory:"Nevada",
Territory_Rep:"Bethany Pittman",
Revenues:{Actual:52888, Estimate:45000}},
{Region:"Southwest", Territory:"Northern California",
Territory_Rep:"Lauren Ipsum",
Revenues:{Actual:38805, Estimate:40000}},
{Region:"Southwest", Territory:"Northern California",
Territory_Rep:"T.R. Smith",
Revenues:{Actual:55498, Estimate:40000}},
{Region:"Southwest", Territory:"Southern California",
Territory_Rep:"Alice Treu",
Revenues:{Actual:44985, Estimate:45000}},
{Region:"Southwest", Territory:"Southern California",
Territory_Rep:"Jane Grove",
Revenues:{Actual:44913, Estimate:45000}}
]);
<?xml version="1.0"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:mx="library://ns.adobe.com/flex/mx"
xmlns:s="library://ns.adobe.com/flex/spark">
<fx:Script>
<![CDATA[
import mx.collections.ArrayCollection;
// Import the data used by the AdvancedDataGrid control.
include "SimpleFlatData.as";
]]>
</fx:Script>
<mx:AdvancedDataGrid id="myADG"
dataProvider="{dpFlat}"
width="100%" height="100%">
<mx:groupedColumns>
<mx:AdvancedDataGridColumn dataField="Region"/>
<mx:AdvancedDataGridColumn dataField="Territory"/>
<mx:AdvancedDataGridColumn dataField="Territory_Rep"
headerText="Territory Rep"/>
<mx:AdvancedDataGridColumnGroup headerText="Revenues">
<mx:AdvancedDataGridColumn dataField="Actual"/>
<mx:AdvancedDataGridColumn dataField="Estimate"/>
</mx:AdvancedDataGridColumnGroup>
</mx:groupedColumns>
</mx:AdvancedDataGrid>
</s:Application>
で、私たちはグループ化された列を定義取得するAdvancedDataGridColumnGroup
を定義する必要があります。
AdvancedDataGridがJSONデータに基づいて列を自動的に検出できるかどうか試していました。私は次のコードを試しました:
このコードを使用すると、AdvancedDataGridは自動的に列名とデータを検出します。しかし、Revenues
のネストされた列を作成することはできません。理想的にはそれがActual
とEstimate
としてそれのための2つのサブ列を作成する必要がありますが、それは1つの列のみと[object Object]
たAdvancedDataGridが自動的にネストされた列を作成できるようにする方法はありとして表示データを作成しましたか?
あなたの返事をありがとう。しかし問題は、データが別のシステムを使用して作成され、ネストされた形式になると判断されることです。したがって、フラットモデルを作成することは問題になりません。 :(ネストされた*オブジェクト*をネストされたカラムとして解釈するようにAdvancedDataGridを変更できますか? – Garbage
他のシステムを使用してデータを作成しても、それを解釈してデータに追加することはできませんあなたの選択のモデルです。もしそれがあまりにも多くの作業をしているようであれば、いつでも[labelFunctions](http://help.adobe.com/jp/FlashPlatform/reference/actionscript/3/mx/controls/advancedDataGridClasses/AdvancedDataGridColumn.html #labelFunction)、カスタム[アイテムレンダラー](http://help.adobe.com/jp/flex/using/WS03d33b8076db57b9-23c04461124bbeca597-8000.html) –