对于我当前的项目,我用“menuStrip”和几个“ToolStripMenuItem”制作了一个 MDIform。几个按钮和一个 devexpress“NavbarControl”
目的是用户使用用户 ID 登录,应用程序将获得该行中特定“控件”的数据行,如果其为 true,则项目必须可见,否则项目必须不可见。
Datarow 还包含项目的名称。
所以我使用:
this.Controls[item].Visible = true;
项目 = 字符串(项目名称)
如果我用它来隐藏菜单条本身,如果我在 MenuStipItems 上尝试它,它会工作,它会给出一个空引用异常。
我怎样才能控制MenuStip里面的项目,只有项目的名字???
代码:
DataTable dt = GetData();
foreach (DataRow row in dt.Rows)
{
string item = row["ItemNaam"].ToString();
foreach (string rol in Rollen)
{
DataRow dr = GetDataByItemNaam(item);
if (Convert.ToBoolean(dr[rol]) == true)
{
this.Controls[item].Visible = true; //Show Item
}
}
}