0

我正在为网格实现多重排序。我想为此使用该sortchange事件,但我必须取消该事件,以便我可以使用我自己的排序配置调用商店。

这没有用:

oGrid.on('sortchange', function(oColumnContainer, oColumn, strSortOrder){
  //...
  return false;
})
4

1 回答 1

0

自己找到了解决办法。

当我需要我的多重排序时,我将网格上的所有列设置为sortable: false在创建时(似乎不可能即时执行此操作)

然后on('headerclick,我在创建网格后立即为所有列对象设置了一个 , function() {...})`。

sortable: false可以防止标题上的单击事件对表格进行排序,但稍后我仍然可以sort()使用保存的列以编程方式调用商店。

var oGrid = Ext.create( 'Ext.grid.Panel', {
  ...
  columns: [
    { ..., sortable: false }
  ]
});

for( i in oGrid.columns ) {
  oGrid.columns[i].on('headerclick', function(){...});
}
于 2013-02-19T17:09:10.990 回答