コード例 #1
0
        private void PopulateSub(MenuStrip mms, ToolStripMenuItem menu)
        {
            MethodInvoker method1 = delegate
            {
                var selectedText = new ToolStripMenuItem("Change Selected Display to Text");
                selectedText.ShortcutKeys = Keys.Control | Keys.T;
                selectedText.Click       += OnSelectText_Click;
                menu.DropDownItems.Add(selectedText);
            };


            MethodInvoker method2 = delegate
            {
                var selectedIcon = new ToolStripMenuItem("Change Selected Display to Icon");
                selectedIcon.ShortcutKeys = Keys.Control | Keys.R;
                selectedIcon.Click       += OnSelectIcon_Click;
                menu.DropDownItems.Add(selectedIcon);
            };

            MethodInvoker method3 = delegate
            {
                var selectedApp = new ToolStripMenuItem("Change Selected Display to Application Setting");

                selectedApp.Click += OnSelectApp_Click;
                menu.DropDownItems.Add(selectedApp);
            };

            mms.BeginInvoke(method1);
            mms.BeginInvoke(method2);
            mms.BeginInvoke(method3);
        }
コード例 #2
0
ファイル: Menu.cs プロジェクト: schifflee/bjd5
        //Java fix パラメータisJpを追加
        //メニュー構築(内部テーブルの初期化)
        public void InitializeRemote(bool isJp)
        {
            if (_menuStrip == null)
            {
                return;
            }

            if (_menuStrip.InvokeRequired)
            {
                _menuStrip.BeginInvoke(new MethodInvoker(() => InitializeRemote(isJp)));
            }
            else
            {
                //Java fix
                _isJp = isJp;
                //全削除
                _menuStrip.Items.Clear();
                _ar.Clear();

                var subMenu = new ListMenu {
                    new OneMenu("File_Exit", "終了", "Exit", 'X', Keys.None)
                };
                //「ファイル」メニュー
                var m = AddSubMenu(_menuStrip.Items, new OneMenu("File", "ファイル", "File", 'F', Keys.None));
                AddListMenu(m, subMenu);
            }
        }
コード例 #3
0
        /** Menu registration using MethodInvoker */
        private void PopulateSubMenuMethod(MenuStrip mms, ToolStripMenuItem menu, string subMenuText, Keys keys, EventHandler handler)
        {
            MethodInvoker method = delegate
            {
                var subMenuItem = new ToolStripMenuItem(subMenuText);
                subMenuItem.ShortcutKeys = keys;
                subMenuItem.Click       += handler;
                menu.DropDownItems.Add(subMenuItem);
            };

            mms.BeginInvoke(method);
        }
コード例 #4
0
 private void EnableMenuStripItem(MenuStrip menustrip, ToolStripMenuItem menu, bool enable)
 {
     if (menustrip.InvokeRequired)
     {
         EnableMenuStripItemCallback d = new EnableMenuStripItemCallback(EnableMenuStripItem);
         menustrip.BeginInvoke(d, new object[] { menustrip, menu, enable });
     }
     else
     {
         menu.Enabled = enable;
     }
 }