C# 如果所有菜单项都隐藏在C中,如何隐藏主菜单#

C# 如果所有菜单项都隐藏在C中,如何隐藏主菜单#,c#,visual-studio,menu,C#,Visual Studio,Menu,我有一个叫做Entries的主菜单。它有许多子菜单项。 基于设置子菜单可设置为可见=假 如果主菜单的所有子菜单都被隐藏,我想隐藏条目 我试试看 int Count = 0; foreach (ToolStripDropDownItem mnu in entriesToolStripMenuItem.DropDownItems) { if (mnu.Visible) { Count++; } } if (Count == 0) { entriesTo

我有一个叫做Entries的主菜单。它有许多子菜单项。 基于设置子菜单可设置为可见=假

如果主菜单的所有子菜单都被隐藏,我想隐藏条目

我试试看

int Count = 0;
foreach (ToolStripDropDownItem mnu in entriesToolStripMenuItem.DropDownItems)
{
    if (mnu.Visible)
    {
        Count++;
    }
}
if (Count == 0)
{
    entriesToolStripMenuItem.Visible = false;
}
但问题是,
if(mnu.Visible)
总是返回false,因为子菜单Visible属性由于条目主菜单未展开而为false。当我点击条目时,子菜单项的visible属性为coming=true


我想在表单加载事件中隐藏它。

尝试使用Tag属性

int Count = 0;
foreach (ToolStripDropDownItem mnu in entriesToolStripMenuItem.DropDownItems)
{
    if (mnu.Tag==1)
    {
        Count++;
    }
}
if (Count == 0)
{
    entriesToolStripMenuItem.Visible = false;
}

尝试使用标记属性

int Count = 0;
foreach (ToolStripDropDownItem mnu in entriesToolStripMenuItem.DropDownItems)
{
    if (mnu.Tag==1)
    {
        Count++;
    }
}
if (Count == 0)
{
    entriesToolStripMenuItem.Visible = false;
}