Exemplo n.º 1
0
        private void contextMenu_Opening(object sender, CancelEventArgs e)
        {
            if (_currentItem == null)
            {
                //e.Cancel = true;
                return;
            }

            for (int i = _contextMenu.Items.Count - 1; i >= 0; i--)
            {
                if (_contextMenu.Items[i] is ToolStripSeparator)
                {
                    break;
                }
                _contextMenu.Items.RemoveAt(i);
            }

            if (_currentItem != null && _currentItem.Tag is IssueItemView)
            {
                IssueItemView issue = (IssueItemView)_currentItem.Tag;
                foreach (IIssueAction action in issue.GetActions())
                {
                    ActionMenuItem menu = new ActionMenuItem(issue, action);
                    menu.Click += new EventHandler(RefreshContents);
                    _contextMenu.Items.Add(menu);
                }
            }
        }