Пример #1
0
        // Add dynamic menu item in a submenu. Parameter menuItems
        // contains existing menu items in the submenu.
        private void AddMenuItemInSubmenu(MenuItem menuItem,
           Menu.MenuItemCollection menuItems)
        {
            switch (_itemInsertMode)
            {
                case ItemInsertMode.Append:
                    if (_itemCount == _maxItems)
                    {
                        menuItems.RemoveAt(0);
                        _itemCount--;
                    }
                    menuItems.Add(menuItem);
                    break;

                case ItemInsertMode.Prepend:
                    if (_itemCount == _maxItems)
                    {
                        menuItems.RemoveAt(_maxItems - 1);
                        _itemCount--;
                    }
                    menuItems.Add(0, menuItem);
                    break;
                default:
                    break;
            }
            _itemCount++;
            _anchor.Enabled = true;
        }
Пример #2
0
        // Add inline dynamic menu item. Parameter menuItems contains
        // existing inline dynamic menu items.
        private void AddMenuItemInline(MenuItem menuItem,
           Menu.MenuItemCollection menuItems)
        {
            int anchorIndex = _anchor.Index;
            switch (_itemInsertMode)
            {
                case ItemInsertMode.Append:
                    if (_itemCount == _maxItems)
                    {
                        menuItems.RemoveAt(anchorIndex + 1);
                        _itemCount--;
                    }
                    menuItems.Add(anchorIndex + _itemCount + 1, menuItem);
                    break;

                case ItemInsertMode.Prepend:
                    if (_itemCount == _maxItems)
                    {
                        menuItems.RemoveAt(anchorIndex + _maxItems);
                        _itemCount--;
                    }
                    menuItems.Add(anchorIndex + 1, menuItem);
                    break;
                default:
                    break;
            }
            _itemCount++;
            _separator.Visible = true;
        }