How to remove an item from the context menu in WinForms TabbedMDIManager?
Remove an item from context menu
A CustomTabbedMDIManager should be derived from TabbedMDIManager in that ContextMenuBeforePopup event should be overidden to remove the item.
C#
public class CustomTabbedMDIManager : TabbedMDIManager
{
public CustomTabbedMDIManager() : base() {}
protected override void ContextMenu_BeforePopup(object sender, CancelEventArgs e)
{
ParentBarItem popupMenuParentBarItem = sender as ParentBarItem;
foreach(BarItem bitem in popupMenuParentBarItem.Items)
{
if (bitem.Text == "New Hori&zontal Tab Group")
{
// To remove the item
popupMenuParentBarItem.Items.Remove(bitem);
break;
}
}
base.ContextMenu_BeforePopup(sender, e);
}
}
VB
Public Class CustomTabbedMDIManager : Inherits TabbedMDIManager Public Sub New() MyBase.New() End Sub Protected Overrides Sub ContextMenu_BeforePopup(ByVal sender As Object, ByVal e As CancelEventArgs) Dim popupMenuParentBarItem As ParentBarItem = CType(IIf(TypeOf sender Is ParentBarItem, sender, Nothing), ParentBarItem) For Each bitem As BarItem In popupMenuParentBarItem.Items If bitem.Text = "New Hori&zontal Tab Group" Then ' To remove the item popupMenuParentBarItem.Items.Remove(bitem) Exit For End If Next bitem MyBase.ContextMenu_BeforePopup(sender, e) End Sub End Class