Захват события MouseHover на ContextMenuStrip

Я использую элемент управления NotifyIcon , связанный с ContextMenuStrip , чтобы отобразить многоуровневое меню. Мне нужно загрузить новую ветку подменю, когда мышь пользователя наводится на выбранный элемент.

К сожалению, ContextMenuStrip не имеет события для записи событий MouseHover , поэтому я бы хотел использовать элементы управления ToolStripMenuItem вместо стандартного ToolStripItem .

ToolStripMenuItem has an event called MouseHover, but I need one event handler for all items in the menu. I don't have an idea how I can do that. Below is part of my code, which I use to add an event handler to a single ToolStripMenuItem.

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

mi.MouseHover += new EventHandler(mi_MouseHover);
2
nl ja de

2 ответы

You can write a specific Event Handler to use it for all Tool Strip Menu Items

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


 mi.MouseHover += new EventHandler(ToolStripHover);

Или вы можете скопировать ToolStripHover и вставить его в каждый элемент меню MouseHover , если вы используете Visual Studio.

1
добавлено

Вы можете попробовать MouseEnter для этого ..

0
добавлено
Microsoft Stack Jobs
Microsoft Stack Jobs
1 788 участник(ов)

Work & freelance only Microsoft Stack. Feed https://t.me/Microsoftstackjobsfeed Чат про F#: @Fsharp_chat Чат про C#: @CSharpChat Чат про Xamarin: @xamarin_russia Чат общения:@dotnettalks

Microsoft Developer Community Chat
Microsoft Developer Community Chat
584 участник(ов)

Чат для разработчиков и системных администраторов Microsoft Developer Community. __________ Новостной канал: @msdevru __________ Баним за: оскорбления, мат, рекламу, флуд, флейм, спам, NSFW контент, а также большое количество оффтоп тем. @banofbot