5

ステートフル グリッドに問題があります。並べ替えの状態は保存したくないが、他のすべてのオプション (列の位置、列の幅、グループ化など) は保存したい

今のところ、stateEvents オプションを使用してこれを試しましたが、イベントが発生したときにグリッドの状態全体を保存します。

ソート状態を保存から除外するオプションはありますか??

グリッド構成の一部:

this.gridPanel = new Ext.grid.GridPanel({
                id:'grid'+this.id,
                region:region,
                layout:'fit',
                stateful:true,
                stateEvents: ['columnmove', 'columnresize', 'groupchange', 'bodyresize'],
                loadMask:true,
                split:true,
                store: this.stores['root'+this.id],
                cm: this.getRootColumnModel(),
                sm: this.getRootSelectionModel(),
4

2 に答える 2

4

applyStateグリッドのメソッドを単純にオーバーライドできます(およびその中のsort状態を削除できます)。

this.gridPanel = new Ext.grid.GridPanel({
    // ...,
    // ...,
    applyState: function(state) {
        if (state) {
            var newState = Ext.apply({}, state);
            delete newState['sort'];
            Ext.apply(this, newState );
        }
    },
    // ...
});
于 2011-08-22T13:29:17.223 に答える
2

これは私の解決策ではありません。Sencha サポート チームから提供されたようです。例は機能します。

https://fiddle.sencha.com/#fiddle/dlc

http://www.sencha.com/forum/showthread.php?294920

于 2015-04-16T16:50:14.823 に答える