Для запрета пунктов меню есть свойство Enabled:
public bool Enabled {get; set;}
Смотрим пример:
// CSharp
using System;
using System.Windows.Forms;
using System.Drawing;
class MainForm : Form
{
MenuItem MenuNew;
public MainForm()
{
Text = "Easy Draw";
MainMenu mnuMenu = new MainMenu();
this.Menu = mnuMenu;
MenuItem MenuItemFile = new MenuItem("&File");
MenuNew = new MenuItem("New");
MenuItem MenuOpen = new MenuItem("Open");
MenuItem MenuExit = new MenuItem("Exit",
new System.EventHandler(this.MenuExit_Click));
MenuItemFile.MenuItems.Add(MenuNew);
MenuItemFile.MenuItems.Add(MenuOpen);
MenuExit.Enabled = false;
MenuItemFile.MenuItems.Add(MenuExit);
mnuMenu.MenuItems.Add(MenuItemFile);
}
private void MenuExit_Click(Object sender, EventArgs e)
{
MessageBox.Show("Exit");
}
public static void Main(string[] args)
{
Application.Run(new MainForm());
}
}
А вот результат:
