2009-08-31 3 views
2

Flexでダイナミックデータグリッドを作成しようとしています。データは正常に戻ってきており、列見出しを追加できます。列名が動的でmysqlデータベースから来るので、この方法で行う必要があります。ダイナミックフレックスデータグリッドの作成方法

誰でも私がre.result.resultSet.results [j] .notesの値をデータフィールドに取得する手助けができますか?

<mx:Script> 
    <![CDATA[ 

      import mx.rpc.events.FaultEvent; 
      import mx.rpc.events.ResultEvent; 
      import mx.controls.Alert; 
      import mx.controls.dataGridClasses.DataGridColumn; 


      public function faultHandler(event:FaultEvent):void { 
       // The following statements must be inside a function. 

       text.text = event.message.toString(); 
      } 
      public function resultHandler(re:ResultEvent):void { 
       // The following statements must be inside a function. 

       text.text = "blah"; 
       text.text += re.result.resultSet.columnList[0].key.toString(); 


       for (var i:int = 0; i< re.result.resultSet.columnList.length; i++) { 
        text.text += re.result.resultSet.columnList[i].key.toString(); 

       } 
       var cols:Array = new Array(); 
       var dataProv:Array = new Array(); 
       for (var j:int = 0; j< re.result.resultSet.columnList.length; j++) { 
        text.text += re.result.resultSet.results[j].notes.toString(); 
        var column:DataGridColumn = new DataGridColumn; 
        column.headerText= re.result.resultSet.results[j].label.toString(); 
        column.dataField = re.result.resultSet.results[j].notes.toString(); 
        cols.push(column); 


      } 
      myGrid.columns = cols; 


      } 



    ]]></mx:Script> 
    <mx:TextArea id="text" x="74" y="47" width="551" height="350"/> 
    <mx:Button x="647" y="46" label="Button" click ="{myservice.getWorkSheets()}"/> 
    <mx:DataGrid id="myGrid" x="74" y="424" width="551"/> 

</mx:Application> 

おかげで、

+0

あなたはmore.Iは、このコードは動作しますが、列見出しは、データグリッドの表示され –

+0

直面している問題が何であるか、実行時に列を追加すべきだと思う少しが、すべてのセルを説明することができます空です。 – codecowboy

+0

ちょっと混乱して申し訳ありませんが、私があなたが今やろうとしていることを見て、私のコードはそれを逆にしていました。私は少なくともdataFieldビットが何かをクリアすることを願っています。 – ryanday

答えて

1

データグリッドのためのデータプロバイダのセットはありません。列を定義していますが、行データは定義していません。

-1

列をプッシュした後で検証する必要があると思います。

サンプル:

myGrid.validateNow();