我想将自定义菜单项添加到网格列标题 - 我可以这样做,但显然它仅在自定义菜单可用时才可用。 但是,如果我不希望我的列可排序或隐藏,则不会显示自定义菜单。我创建自定义菜单的方式如下:
var menu = Ext.getCmp('pairsGrid').headerCt.getMenu();
var customEls = menu.add([{
xtype: 'menu',
floating: false,
items:[
{
text: 'Management',
iconCls: 'edit',
menu: {
xtype: "menu",
items: [
{
text: 'Start'
},{
text: 'Stop'
}
]
}
}
]
}]);
如果在我的列配置中,我有sortable: false
并且hideable: false
我的自定义菜单将不会显示;否则,它就在那里。有没有其他方法可以创建菜单,或者以某种方式在没有默认菜单的情况下使其可见?干杯eRez
您可以通过
重写列上的方法强制菜单可见beforeRender
:
{
text : 'xxx',
sortable : false,
hideable : false,
dataIndex: 'xxx',
beforeRender: function() {
Ext.grid.column.Column.prototype.beforeRender.call(this);
this.menuDisabled = false;
}
},
样品:http://jsfiddle.net/sg9w7/1/