Esempio n. 1
0
        public void RemoveContextMenuItem(string applicationId)
        {
            CommandBar bar = _sheet.Application.CommandBars["Cell"];
            List <CommandBarControl> toRemove = new List <CommandBarControl>();

            foreach (CommandBarControl ctr in bar.Controls)
            {
                string tag = ctr.Tag;
                bool   hasApplicationId = MenuItemTagData.HasApplicationId(tag, applicationId);
                if (hasApplicationId)
                {
                    toRemove.Add(ctr);
                    continue;
                }

                if (ctr.Caption.Contains("Budget") || ctr.Caption.Contains("ommand"))
                {
                    toRemove.Add(ctr);
                    continue;
                }
            }

            foreach (var commandBarControl in toRemove)
            {
                commandBarControl.Delete();
            }
        }
Esempio n. 2
0
        private void ButtonOnClick(CommandBarButton ctrl, ref bool cancelDefault)
        {
            string commandId = MenuItemTagData.GetCommandId(ctrl.Tag);
            ExcelCommandSelectedAggEvent e = new ExcelCommandSelectedAggEvent
            {
                CommandId = commandId,
                Column    = _col,
                Row       = _row
            };

            _aggregator.PublishEvent <ExcelCommandSelectedAggEvent>(e);
        }
Esempio n. 3
0
        public void SetContextMenu(int r, int c, MenuItem contextMenu, string applicationId)
        {
            CommandBar bar = _sheet.Application.CommandBars["Cell"];

            CommandBarControl control = bar.Controls.Add(Type: MsoControlType.msoControlPopup);
            CommandBarPopup   popup   = control as CommandBarPopup;

            popup.Caption = contextMenu.Caption;
            popup.Tag     = MenuItemTagData.GetStr(applicationId, string.Empty);

            foreach (MenuItem item in contextMenu.Children)
            {
                CommandBarControl iControl = popup.Controls.Add(Type: MsoControlType.msoControlButton);
                CommandBarButton  iButton  = iControl as CommandBarButton;
                iButton.Caption = item.Caption;
                iButton.Tag     = MenuItemTagData.GetStr(applicationId, item.CommandId);
                iButton.Click  += ButtonOnClick;
            }
        }