0

如果我有一个带有子菜单项的上下文菜单,当我将鼠标悬停在主菜单项上时,是否可以阻止子菜单弹出/显示?如果是这样,怎么办?

子菜单项示例截图

4

1 回答 1

2

每个ToolStripDropDownItem都有一个名为DropDown(类型ToolStripDropDown)的属性,指的是当鼠标悬停在项目上时将显示的下拉列表。ToolStripDropDown有一个名为的事件,Opening可让您轻松取消下拉菜单。使用以下代码,都可以在您的表单构造函数中设置:

//Suppose the item you want to suppress automatically showing 
//the drop down is item1
bool clicked = false;
item1.DropDown.Opening += (s,e) => {
  e.Cancel = !clicked;
  clicked = false;
};
item1.Click += (s,e) => {
  clicked = true;
  item1.ShowDropDown();
};
//The code above disables the automatic dropping-down 
//and shows the drop down by clicking on the item1.
于 2013-10-27T09:46:08.300 回答