2010-11-18 3 views
0

dijit.Dialogに埋め込まれたdojox.grid.DataGridをプログラマチックに作成しました。グリッドにdojo.data.ItemFileWriteStoreを使用しています。 "url"コンストラクタを使用してItemFileWriteStoreを作成すると、それが動作し、グリッドが表示されます。Dialogに埋め込まれたdojox DatagridのItemFileWriteStoreを設定する

var store = new dojo.data.ItemFileWriteStore({ 
     "url": "data/reportTypes.json" 
    } 
); 

ただし、 "data"コンストラクタを使用してItemFileWriteStoreを作成すると、何も表示されません。グリッドは存在せず、エラーも表示されません。

var store = new dojo.data.ItemFileWriteStore({ 
     //"url": "data/reportTypes.json" 
     data: _reportGridData 
    } 
); 

また、「URL」コンストラクタ(第一のシナリオ)の場合には、私はそれがゼロであったgrid.startup()を呼び出した後ROWCOUNT属性をチェックします。つまり、行はレンダリングされませんでした。一方、 "データ"コンストラクタ(2番目のシナリオ)の場合、rowCountは8ですが、はグリッドを参照しません! グリッドをダイアログに埋め込むことはできませんか?何が問題なのですか? 誰かがこれで私を助けてくれますか?

答えて

0

私は今週同様の問題がありました。問題は、displayed CSS属性がである要素の内部でグリッドをレンダリングすると、グリッドは親コンテナの幅に合わせてレンダリングされますが、高さはわずか0ピクセルです。

ダイアログを表示し、開いたダイアログの中にプログラムでグリッドを作成してみることもできます。

+0

グリッド上でrender()を呼び出すと、私のために働いた!それはsetStore()を呼び出すたびに呼び出されなければならないと思われます。 –

関連する問題