1

我正在禁用 Windows 窗体菜单条中的父菜单选项。当您将鼠标悬停在它上面时,子菜单仍会打开。有没有办法禁用子菜单打开或者我必须禁用所有子菜单项?

4

3 回答 3

1

在鼠标悬停时显示菜单下拉菜单似乎不是 a 的默认行为,ToolStripMenuItem我找不到启用此功能的属性。

我确实找到了想要这种行为的人的这篇文章,您应该检查是否有MouseHover事件处理程序ToolStripMenuItem并检查Enabled那里的属性:

private void toolStripMenuItem1_MouseHover(object sender, EventArgs e)
{
    if (toolStripMenuItem1.Enabled)
        toolStripMenuItem1.DropDown.Show(menuStrip1, new Point(0, 0));
}

高温高压

于 2010-10-30T03:59:11.093 回答
0

只需将Enable父菜单上的属性设置为False. 在 .net 2.0 和 3.5 中,子菜单不会显示。

也请尝试更具体一点。

于 2010-10-29T20:53:29.770 回答
0

在禁用主要项目后,我最终循环了 DropDownItems 并禁用了它们。

for (int i = 0; i < this._menuOpen.DropDownItems.Count; i++)
{
    this.menuOpen.DropDownItems[i].Enabled = false;
}
于 2010-11-01T13:39:23.210 回答