编程语言
首页 > 编程语言> > AutoCAD.Net/C#.Net QQ群:193522571 生成下拉菜单、工具条

AutoCAD.Net/C#.Net QQ群:193522571 生成下拉菜单、工具条

作者:互联网

   #region 添加子菜单
   int i = 0;
   foreach (string MenuParentName in MenuParentNameList)
   {
    i++;
    //当前子集数据
    var SonMenuData = SwtoolMenu.AsEnumerable()
     .Where(p => p.Field<string>("MenuParent") == MenuParentName && !p.Field<bool>("IsDeleted") && p.Field<bool>("IsActive"))
     .OrderBy(q => q.Field<int>("CommandIndex")).Distinct();
    if (i ==2 || i==3)
    {
     #region 第2和3个工具集全加入到第一级工具条中
     //下拉菜单中增加分隔符号
     MainMenu.AddSeparator(i);
     //工具条上增加分隔符号
     ToolbarButton tb = new ToolbarButton(MainToolBar);
     tb.DrawSeparator = true;
     //将比较重要的按钮加入到父级工具条中
     foreach (var SonMenuItem in SonMenuData)
     {
      string MenuID = "ID_" + MainMenuName + "_" + SonMenuItem["ID"].ToString();
      //增加到一级菜单
      MainMenu.AddMenuItem(int.Parse(SonMenuItem["ID"].ToString()), SonMenuItem["MenuName"].ToString(), MenuID);
      //增加到一级工具条
      MainToolBar.AddToolbarButton(-1, SonMenuItem["MenuName"].ToString(), MenuID);
     }
     #endregion 第2和3个工具集全加入到第一级工具条中
    }
    else
    {
     #region 其它按钮加入到各自的子工具条中
     //新建子菜单
     PopMenu SonMenu = MainMenu.AddSubMenu(i, MenuParentName, "ID_SON_" + i.ToString());
     //新建子按钮
     Toolbar SonToolBar = cs.MenuGroup.AddToolbar(MenuParentName);
     //新建子项菜单与按钮
     foreach (var SonMenuItem in SonMenuData)
     {
      string MenuID = "ID_" + MainMenuName + "_" + SonMenuItem["ID"].ToString();
      //增加到父菜单上
      SonMenu.AddMenuItem(int.Parse(SonMenuItem["ID"].ToString()), SonMenuItem["MenuName"].ToString(), MenuID);
      //增加到父按钮上
      SonToolBar.AddToolbarButton(-1, SonMenuItem["MenuName"].ToString(), MenuID);
     }
     //将按钮子集增加到主工具栏上
     MainToolBar.AttachToolbarToFlyout(-1, SonToolBar);
     #endregion 其它按钮加入到各自的子工具条中
    }
   }
   #endregion

标签:QQ,MenuID,工具条,SonMenuItem,ToString,按钮,Net,下拉菜单,ID
来源: https://www.cnblogs.com/swtool/p/11356159.html