Skip to content

MenuItem

MenuItem represents a single item in a menu, with support for text, hotkeys, separators, checkable items, and submenus.

The menu item text.

item.Text = "Save";

The hotkey character (displayed with underline).

item.Hotkey = 'S'; // Alt+S shortcut

Whether this is a separator item.

var separator = MenuItem.Separator();

Whether the item is enabled (default: true).

item.Enabled = false; // Disable item

Whether the item is checked (for toggle items).

item.Checked = true; // Show as checked

Submenu items (creates a submenu).

item.SubItems.Add(new MenuItem("Sub Item"));

Whether this item has a submenu.

if (item.HasSubmenu)
{
// Item has submenu
}

Raised when the menu item is selected.

item.Selected += () =>
{
Console.WriteLine("Item selected");
};

Programmatically invokes the item’s action.

item.Invoke();

Static method to create a separator item.

var separator = MenuItem.Separator();
// Simple menu item
var newItem = new MenuItem("New", () => CreateNew(), 'N');
// Checkable menu item
var showToolbar = new MenuItem("Show Toolbar", null, 'T')
{
Checked = true
};
showToolbar.Selected += () =>
{
showToolbar.Checked = !showToolbar.Checked;
};
// Menu with submenu
var viewMenu = new MenuItem("View");
viewMenu.SubItems.Add(showToolbar);
viewMenu.SubItems.Add(MenuItem.Separator());
viewMenu.SubItems.Add(new MenuItem("Zoom In", () => ZoomIn(), '+'));
menuBar.AddItem(viewMenu);