2011-06-08 7 views
2

私はselModelのグリッドを定義しています。
ストアがロードされるたびに、グリッド列はグリッドReconfigureメソッドを使用して動的に再構成されます。
これを行うと、グリッドselModelが消えます。
グリッド列をどのように再構成して、selModelも含めることができます。
以下はいくつかの例のコードである:ExtJs4 - SelModelでグリッド列を再設定すると消えますか?

//The Selection Model for the grid. 
var sm = new Ext.selection.CheckboxModel(); 

//The Grid 
var grid = new Ext.grid.Panel({ 
    store: store, 
    selModel: sm, 
    columns:[{ 
      header: 'Loading ...' 
     }] 
}); 

//The store on load event where the columns are reconfigured 
store.on('load', function(store){ 
    var columns = store.data.Data.items; 
    grid.reconfigure(store, columns); 
}, this); 

はExtJs3 Iにおいて、カラム自体とselModelを指定することができるが、これはExtJs4には当てはまりません。では、グリッド列を再構成した後でもselModelが常に表示されるようにするにはどうすればよいですか? 3.3.1 APIドキュメント(私の強調)から

+0

私は同じ問題を抱えています。 Senchaフォーラムにはいくつかの回答がありましたが、少なくとも私にとってはうまくいきませんでした。http://goo.gl/b0DyG – DashK

答えて

2

これはExtjsバージョン[4.0.2]で報告されているバグです。今、Extjsバージョン[4.0.7]で解決されています。

+1

解決してもよろしいですか?私は4.0.7を使用していますが、選択モデルを再設定するとダブルチェックボックスの列が表示されます。 –

0

は 異なるストアおよび列モデルと 火災「再構成」イベントを使用するためにグリッドを再設定します。 ビューは新しいオブジェクト にバインドされ、リフレッシュされます。 GridPanelを再設定すると、特定の 既存の設定が無効になる可能性があることに注意してください。 たとえば、 autoExpandColumnが構成されていても、新しいColumnModelにはより長い が存在しない可能性があります。 また、既存のPagingToolbarはまだ が古いStoreにバインドされ、 は再バインディングが必要になります。すべてのプラグインは、 も新しい データで再設定する必要があります。

グリッドを再設定した後でSelectionModelを再設定する必要があると思います。

+1

ご回答ありがとうございます。どのように私はSelectionModelをリセットすることができますか? – shane87

関連する問題