public void CreateMyMenu()
{
    // Create a main menu object.
    MainMenu mainMenu1 = new MainMenu();    // Create empty menu item objects.
    MenuItem topMenuItem = new MenuItem();
    MenuItem menuItem1 = new MenuItem();
          
    // Set the caption of the menu items.
    topMenuItem.Text = "&File";
    menuItem1.Text = "&Open";    // Add the menu items to the main menu.
         topMenuItem.MenuItems.Add(menuItem1);
    mainMenu1.MenuItems.Add(topMenuItem);
                
    // Add functionality to the menu items using the Click event. 
    menuItem1.Click += new System.EventHandler(this.menuItem1_Click);    // Assign mainMenu1 to the form.
    this.Menu=mainMenu1;
}private void menuItem1_Click(object sender, System.EventArgs e)
{    
           // Create a new OpenFileDialog and display it.
   OpenFileDialog fd = new OpenFileDialog();
        fd.DefaultExt = "*.*";
   fd.ShowDialog();
}

解决方案 »

  1.   

    XMLMenu xmlmenu = new XMLMenu("XMLMenu.xml",mmMenu,new EventHandler(this.Menu_Click));通过这个this.Menu_Click的方法来实现菜单单击事件的绑定
    这是一个通过调用XML来动态生成菜单的例子,,要的请与我联系:[email protected]
      

  2.   

    因为我在数据库里面读取菜单,并且必须是name与text不相同?具体怎么做?
      

  3.   

    Module_Code Parent_Code Module_Name WinForm_Name
    MI001 MI000 系统设置
    MI011 MI001 公司管理
    MI012 MI001 部门管理
    MI013 MI001 用户管理
    MI014 MI001 模块管理
    MI015 MI001 权限管理
    MI016 MI001 角色管理
    MI017 MI001 注销用户
    MI018 MI001 通出系统
    MI002 MI000 订单管理
    MI019 MI002 客户维护 ODM.frmCustomer
    上面是我数据库里的数据,我想把这此数据动态的生成菜单,并动态的生成事件,单击事件就调用我指定的模块(比如:ODM.frmCustomer)
      

  4.   

    Essence_zhx(艺森) 
    这个很急,能否告诉我具体怎么做,最好给一段代码?
      

  5.   

    做一事业代理 
    public delegate void MenuItemClickedEventHandler(object sender, MenuItemClickEventArgs e);
    protected virtual void OnMenuItemClick(MenuItemClickEventArgs e)
    {
    if (MenuItemClick != null)
    MenuItemClick(this, e);
    }