2

我正在使用一个NotifyIcon与 a 关联的控件ContextMenuStrip来显示多级菜单。当用户的鼠标悬停在所选项目上时,我需要加载子菜单的新分支。

不幸的是,ContextMenuStrip没有用于捕获MouseHover事件的事件,所以我想使用ToolStripMenuItem控件,而不是标准ToolStripItem控件。

ToolStripMenuItem有一个名为 的事件MouseHover,但我需要一个事件处理程序来处理菜单中的所有项目。我不知道我该怎么做。下面是我的代码的一部分,我用它来将事件处理程序添加到单个ToolStripMenuItem.

ToolStripMenuItem mi = new ToolStripMenuItem();
mi.Text = "Hello";
Menu.Items.Add(mi);

mi.MouseHover += new EventHandler(mi_MouseHover);
4

2 回答 2

1

您可以编写特定的事件处理程序以将其用于所有工具条菜单项

    private void ToolStripHover(object sender, EventArgs e)
    {
        //Do Something
    }


 mi.MouseHover += new EventHandler(ToolStripHover);

或者,如果您使用的是 Visual Studio,则可以将其复制ToolStripHover并粘贴到每个菜单项的事件中。MouseHover

于 2012-12-28T13:56:54.783 回答
0

您可以为此尝试MouseEnter事件..

于 2012-12-28T12:55:28.753 回答