|
App.component.ts
public headermenuItems: MenuItemModel[] = [
{
text: 'Hide Column',
id:'hide'
},
{
text: 'UnHide Column',
id:'unhide'
},
{
text: 'Sort Column',
id:'sort'
},
{
text: 'Clear Sort',
id:'unSort'
},
];
beforeOpen(args): void {
this.headercontextmenu.showItems(['Sort Column', 'Clear Sort', 'UnHide Column', 'Hide Column']);
if (parentsUntil(args.event.target, 'first', true)) { // checks the grid id with the target element’s parent until it matches with the id.
if (this.grid.getColumnByField('ShipCountry').visible == true) {
this.headercontextmenu.hideItems(['UnHide Column', 'Sort Column', 'Clear Sort']);
}
else {
this.headercontextmenu.hideItems(['Hide Column', 'Sort Column', 'Clear Sort']);
this.headercontextmenu.showItems(['UnHide Column']);
}
} else {
this.headercontextmenu.hideItems(['UnHide Column', 'Hide Column']);
this.headercontextmenu.showItems(['Sort Column', 'Clear Sort']);
}
}
|
|
App.component.html
<div>
<ejs-contextmenu #contextmenu target='.e-content' [items]='menuItems' (select)='select($event)'></ejs-contextmenu>
</div>
<div>
<ejs-contextmenu #headercontextmenu target='.e-gridheader'
[items]='headermenuItems' (beforeOpen)='beforeOpen($event)' (select)='select($event)'></ejs-contextmenu>
</div> |