我有一个与 Menu
相关的问题。我在 asp.net
中添加了一个 MenuItem
。我使用 c#
。我想根据用户权限禁用菜单的 父项和子项。
有 3 个用户,分别是 "User"、"Power-User" 和 "BT_User"。"User" 的权限最低,"BT_User" 的权限最高。
我该怎么做?有人可以回答我吗?
我有一个与 Menu
相关的问题。我在 asp.net
中添加了一个 MenuItem
。我使用 c#
。我想根据用户权限禁用菜单的 父项和子项。
有 3 个用户,分别是 "User"、"Power-User" 和 "BT_User"。"User" 的权限最低,"BT_User" 的权限最高。
我该怎么做?有人可以回答我吗?
从这里开始实现您的逻辑...
(Implemente拼写错误,已更正) if(UserType == "Power-User")
{
MenuItem mnuItem = Menu1.FindItem("MenuOption"); // If delete a specific item
//to remove
Menu1.Items.Remove(mnuItem);
//to disable and not remove
mnuItem.Enabled = false;
}
if (UserType == "BT_User")
{
Your other logic
}
if (UserType == "Power-User")
{
Menu1.Items.Find("MenuToDelete1", true)[0].Enabled = false;
Menu1.Items.Find("MenuToDelete2", true)[0].Enabled = false;
//or
Menu1.Items.Remove(Menu1.FindItem("MenuToDelete"));
Menu1.Items.Remove(Menu1.FindItem("MenuToDelete2"));
}
if (UserType == "BT_User")
{
Menu1.Items.Find("DeletedItem1", true)[0].Enabled = true;
Menu1.Items.Find("DeletedItem2", true)[0].Enabled = true;
MenuItem item1 = new MenuItem();
item.Text = "DeletedItem1";
MenuItem item2 = new MenuItem();
item.Text = "DeletedItem2";
//or
menuStrip1.Items.Insert(index1, item1);
menuStrip1.Items.Insert(index2, item2);
}
MenuItem
的Enabled
属性即可。没有足够的信息告诉您如何构建其周围的逻辑,但是当您想要禁用一个时,只需执行以下操作:menuItem.Enabled = false;
Enabled
设置为 false
后,任何子菜单都将无法弹出。Enabled
属性的说明:
获取或设置一个值,该值指示 MenuItem 对象是否启用,从而允许该项显示弹出图像和任何子菜单项。