コード例 #1
0
        private void OnClick(object sender, EventArgs e)
        {
            EnumStripMenuItem <T> menuItem = (EnumStripMenuItem <T>)sender;

            clickedHandler((T)menuItem.Tag);
            ClearAllCheckedState();
            CheckedMenuItem  = menuItem;
            menuItem.Checked = true;
        }
コード例 #2
0
 public void SetCheckedByValue(T value)
 {
     ClearAllCheckedState();
     foreach (EnumStripMenuItem <T> item in MenuItems)
     {
         if (value.ToString() == item.Tag.ToString())
         {
             item.Checked    = true;
             CheckedMenuItem = item;
             break;
         }
     }
 }
コード例 #3
0
        public EnumStripMenu(ToolStripMenuItem parentMenuItem, ClickedHandler clickedHandler)
        {
            this.parentMenuItem         = parentMenuItem ?? throw new ArgumentNullException("parentMenuItem");
            this.parentMenuItem.Checked = false;
            this.parentMenuItem.Enabled = true;

            this.clickedHandler = clickedHandler;
            foreach (T enumValue in Enum.GetValues(typeof(T)))
            {
                //if (item == 0) continue;
                EnumStripMenuItem <T> menuItem = new EnumStripMenuItem <T>(enumValue, new System.EventHandler(OnClick));
                MenuItems.Insert(0, menuItem);
            }
        }