如何使用分组功能使用 ExpandAll 和 CollapseAll 进行分组网格

asw*_*yak 1 grid grouping extjs extjs4

我正在尝试使用expandAll() 和collapseAll() 进行分组网格Ext 4.1

但它在覆盖后不起作用:出现错误 ExpandAll() is not Defined

            Ext.override(Ext.grid.feature.Grouping, {
                  collapseAll: function() {
                    var self = this, view = self.view;
                    view.el.query(self.eventSelector).forEach(function (group) {
                      var group_body = Ext.fly(group.nextSibling, '_grouping');
                      self.collapse(group_body);
                    });
                  },

                  expandAll: function() {
                    var self = this, view = self.view;
                    view.el.query(self.eventSelector).forEach(function (group) {
                      var group_body = Ext.fly(group.nextSibling, '_grouping');
                      self.expand(group_body);
                    });
                  }
                });
Run Code Online (Sandbox Code Playgroud)

这是我的视图文件:

 Ext.define('MCT.view.MyGrid',
   {
     extend:'Ext.grid.Panel',
     initComponent:function(){
       var me  = this;
       this.bbar = [{xtype:'button',text:'Expand All', handler:function(){

          me.features[0].expandAll();

          this.callParent(arguments);


        }}];
     },
     features : [{
        ftype : 'grouping',
                    groupHeaderTpl :'.......',
                    startCollapsed : true
       }]

  });
Run Code Online (Sandbox Code Playgroud)

在此先感谢您的帮助!!

har*_*rry 5

这在我的应用程序中适用于我......

\n\n
    xtype: 'tool',                   \n    type: 'collapse-top',\n    hidden: true,\n    handler: function (event, target, owner, tool) {\n        var agPanel = owner.up(), //getting thePanel\n            view = agPanel.view,  \n            gFeature = view.features[0]; //I j\xc3\xbast have one feautre... so [0] works\n\n        gFeature.collapseAll();\n    }\n
Run Code Online (Sandbox Code Playgroud)\n\n

就我而言,我已将折叠顶部工具放置到触发分组的工具栏中。\n奇怪的是,只有当您从面板中获取视图并从视图中获取分组功能时,它才起作用。

\n\n

我认为在你的情况下,当你这样做时它应该起作用

\n\n
var view = me.view;\nview.features[0].expandAll();    \n
Run Code Online (Sandbox Code Playgroud)\n