禁用ToolStripMenuItem与禁用MenuStrip.Item

Nic*_*ick 1 .net c# menustrip winforms

当用户登录到我的应用程序时,有些菜单项是我不希望每个用户看到的。所以我想禁用或使菜单项不可见。例如,当我尝试时是我fileToolStripMenuItem的第一项menuStrip

fileToolStripMenuItem.Enabled = false;-这行不通 menuStrip.Items[0].Enabled = false;-这行通

有人能启发我这里的区别吗?

另外,我希望能够从一个菜单项中禁用下拉菜单项,但是我也不能这样做。

这是代码:

public Form1()
        {
            InitializeComponent();

            // bunch of other code here

            if (!login.ValidatedUser)
            {
                menuStrip1.Items[0].Visible = false; // this works
                toolsToolStripMenuItem.Visible = false; // this does not
                btnStartResourceManager.Enabled = false;
                listAvailableSizes.Enabled = true;
                panelPicSet.Enabled = true;
            }
        }
Run Code Online (Sandbox Code Playgroud)

Ren*_*iuz 6

fileToolStripMenuItem.Enabled = false;可以正常工作。我认为您尝试在InitializeComponent()之前禁用它;呼叫。

public form()
{
    InitializeComponent();
    fileToolStripMenuItem.Enabled = false;//disables all file menu
    saveasToolStripMenuItem.Enabled = false; //disables save as menu item in file menu list
}
Run Code Online (Sandbox Code Playgroud)