Esempio n. 1
0
        private void InitMenu()
        {
            menuHub     = new MenuHub(menuName);
            _menuSource = new ObservableCollection <MenuItemInfo>();
            MenuItemInfo menu1 = new MenuItemInfo("菜单1", Menu1Command)
            {
                GroupName = "Group1"
            };
            MenuItemInfo menu2 = new MenuItemInfo("菜单2", Menu2Command)
            {
                GroupName = "Group1"
            };
            MenuItemInfo menu3 = new MenuItemInfo("菜单3", Menu3Command)
            {
                GroupName = "Group2"
            };
            MenuItemInfo menu4 = new MenuItemInfo("菜单4", Menu4Command)
            {
                GroupName = "Group2"
            };

            //菜单项还可以通过一下方式定义,CommandName为全局命令中定义的命令名称
            //MenuItemInfo menu4 = new MenuItemInfo("菜单4", "CommandName") { GroupName = "Group2" };
            menu1.SubItems.Add(menu2);
            menu1.SubItems.Add(menu3);
            //向全局注册菜单
            menuHub.Register(menuName, menu1, 1);
            menuHub.Register(menuName, menu2, 2);
            menuHub.Register(menuName, menu3, 3);
            menuHub.Register(menuName, menu4, 4);

            //_menuSource.Add(menu1);
            //_menuSource.Add(menu2);
            //_menuSource.Add(menu3);
            //_menuSource.Add(menu4);
            //GetMenuItemInfos 为获取合并后的右键菜单
            //_menuSource = menuHub.GetMenuItemInfos(menuNames.Where(t=>t== "menu1"))?.ToList();
        }
Esempio n. 2
0
        private void InitMenu()
        {
            menuHub = new MenuHub(menuName);
            var menu1 = new MenuItemInfo("菜单1", new RelayCommand(ShowWindow))
            {
                GroupName = "Group1"
            };
            var menu2 = new MenuItemInfo("菜单2", new RelayCommand(ShowWindow))
            {
                GroupName = "Group1"
            };
            var menu3 = new MenuItemInfo("菜单3", new RelayCommand(ShowWindow))
            {
                GroupName = "Group2"
            };
            var menu4 = new MenuItemInfo("菜单4", new RelayCommand(ShowWindow))
            {
                GroupName = "Group2"
            };

            menu1.SubItems.AddRange(new[] { menu2, menu3 });
            //向全局注册菜单
            menuHub.Register(menuName, menu1, 1);
            menuHub.Register(menuName, menu2, 2);
            menuHub.Register(menuName, menu3, 3);
            menuHub.Register(menuName, menu4, 4);
            MenuSource = new ObservableCollection <MenuItemInfo>();//绑定界面的RadContextMenu的菜单集合
            var list = menuHub.GetMenuItemInfos(new List <string>()
            {
                menuName
            });                                                                  //GetMenuItemInfos 为获取合并后的右键菜单

            if (list != null)
            {
                MenuSource.AddRange(list);
            }
        }
Esempio n. 3
0
        private void OnAddMenuItem()
        {
            if (MenuSource.Count == 0)
            {
                return;
            }
            var menucount = MenuSource.Count(t => !t.IsSeparator);
            var menu      = new MenuItemInfo("菜单" + (menucount + 1), new RelayCommand(ShowWindow))
            {
                GroupName = "Group"
            };

            menuHub.Register(menuName, menu);
            MenuSource.Add(menu);
        }
Esempio n. 4
0
        private void OnAddMenuItem()
        {
            if (_menuSource.Count == 0)
            {
                return;
            }
            var          menucount = _menuSource.Count(t => !t.IsSeparator);
            MenuItemInfo menu      = new MenuItemInfo("菜单" + (menucount + 1), Menu4Command)
            {
                GroupName = "Group"
            };

            menuHub.Register(menuName, menu);

            //在其他的插件中可以通过一下方式注册菜单
            //M.MenuManager.Register(menuName, menu);
        }