Отключить захват мыши кнопкой
Я создаю кастом ContextMenuStrip
с Button
в этом:
ContextMenuStrip _contextMenu = new ContextMenuStrip();
_contextMenu.Items.Add(new ToolStripMenuItem("Item"));
_contextMenu.Items.Add(new ToolStripControlHost(new Button()));
Когда я открываю это контекстное меню и перемещаю курсор мыши на "Элемент", он подсвечивается. Но после того, как я нажал Button
а затем снова наведите курсор мыши на "Предмет", он больше не выделяется. Похоже Button
захватывает мышь Как я могу избежать этого или освободить захват после Button
щелчок?
1 ответ
Решение
Вы можете создать свой собственный класс кнопок, унаследованных от Button
и установить ControlStyles.Selectable
в false
, это не даст ему сфокусироваться:
public class MyButton : Button
{
public MyButton()
{
SetStyle(ControlStyles.Selectable, false);
}
}
А потом просто используйте его вместо Button
:
_contextMenu.Items.Add(new ToolStripControlHost(new MyButton()));