首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

右键菜单不自动关闭有关问题

2013-03-10 
右键菜单不自动关闭问题目的是制作一个右键菜单contextMenuStrip,菜单上面有多个CheckBox的个功能子菜单,

右键菜单不自动关闭问题
目的是制作一个  右键菜单contextMenuStrip,菜单上面有多个CheckBox的个功能子菜单,
现在想实现:用户确认完多个选项后在关闭菜单。

ps:设置AutoClose属性false后菜单都不弹出。


请高手指教指教 contextMenuStrip? AutoClose
[解决办法]
改成这样的吧, 用这个就可以了(menu.OwnerItem as ToolStripMenuItem).ShowDropDown();

 private void Form1_Load(object sender, EventArgs e)
        {
            foreach (ToolStripMenuItem mnu in contextMenuStrip1.Items)
            {
                foreach(ToolStripMenuItem mnuSub in mnu.DropDownItems)
                    mnuSub.Click += mnu_Click;

            }
            contextMenuStrip1.AutoClose = false;
        }

        void mnu_Click(object sender, EventArgs e)
        {
            ToolStripMenuItem menu = sender as ToolStripMenuItem;
            menu.Checked = !menu.Checked;

            int checkedCount = 0;

            foreach (ToolStripMenuItem mnu in (menu.OwnerItem as ToolStripMenuItem).DropDownItems)
            {
                if (mnu.Checked)
                    checkedCount++;
            }
           

            if (checkedCount < 5) //这里举例说CheckBox小于5个,不关闭contextMenuStrip1,你按你实际需要的数量修改
                (menu.OwnerItem as ToolStripMenuItem).ShowDropDown();

            
        }

热点排行