Я занимаюсь этой проблемой весь день. У меня есть menustrip с несколькими пунктами меню. Каждый деталь, также имеет много деталей. Теперь, если я нажму на элемент родительского меню, контейнер (аналогичный контекстуменю) останется открытым до тех пор, пока я не щелкнуть где-нибудь еще.Закрытие Winform MenuStrip, когда мышь покидает контейнер
В примере изображения «Clientes» будет родительский элементом, и его «контейнер» с их пунктами меню ребенка.
Что я хотел сделать, это закрыть этот «контейнер», когда мышь покидает родительский элемент или область контейнера. Я не хочу, чтобы щелкнуть в любой другой части формы, чтобы закрыть ее. Когда я говорю это, это потому, что я на самом деле использую кнопки WPF, и мне нужно сделать это таким образом.
Мне нужна помощь здесь, надеюсь кто-нибудь может дать мне совет.
Я пытался использовать событие MouseLeave родителей пунктов («Clientes» и т.д.), и там же:
private void clientesToolStripMenuItem_MouseLeave(object sender, EventArgs e)
{
clientesToolStripMenuItem.DropDown.Close();
}
Это работает, но, очевидно, она закрывает родителя, а также контейнер, когда мышь оставляет меню «Клиенты». Мне нужен способ узнать, находится ли мышь над родительским элементом меню или над одним из их дочерних элементов, чтобы закрыть его, если я знаю, что мышь находится где-то в другом месте.
Надеюсь, кто-то может мне помочь.
Какой контроль вы используете? 'MenuStrip'? –
@ OscarMederos Да. Вон тот. – Andres