将某些ToolStripMenu项限制为某些用户

时间:2012-01-22 21:12:52

标签: .net vb.net toolstripmenu

使用VB.NET 2010:

我正在为我们的工作应用程序制作一个简单的“启动器”应用程序。我已经创建了包含我想要的菜单的ToolStripMenu。他们会这样安排:

文件|部门1 |部门2 |部门3 |管理员|帮助

我需要做的是根据Environment.UserName变量限制对Admin菜单的访问。理想情况下,我希望它甚至不会渲染 - 但如果唯一的选择是让它变灰,我也可以。

1 个答案:

答案 0 :(得分:1)

    public Form1() {
        InitializeComponent();
        var id = System.Security.Principal.WindowsIdentity.GetCurrent();
        var prince = new System.Security.Principal.WindowsPrincipal(id);
        adminToolStripMenuItem.Visible = prince.IsInRole(System.Security.Principal.WindowsBuiltInRole.Administrator);
    }

LAN管理员可以通过相当多的方式移动奶酪。你可以从我发布的非常尴尬的代码中看出来。通常需要使用System.DirectoryServices中的类查询域控制器。