C#如何在登录界面设置主界面的ToolStripMenuItem的enabled属性,实现不同用户进入不同模块
写winform程序的时候,相信很多人都想在登录的时候根据用户类型使主界面的ToolStripMenuItem选项部分禁止,从而达到不同类型各司其职的效果,下面说一说如何实现着一功能!
如下图,登录时候判断用户类型,根据判断的用户类型使不同类型管理员只能使用对应的模块!
首先,在主界面右键点击,选择对应模块,enabled选项设置为false,如上设置了4个false。
其次,在属性中设置Modifiers属性为public,只有设置了这个属性才能在其它窗体设置该窗体的ToolStripMenuItem属性。
如下图,将默认的private改为public:
然后,在登录事件中添加事件了,部分代码如下:
if (myherlper.Rtype(txt_id.Text) == 6) //系统管理员
{
this.Hide();
Reader.common com = new Reader.common(); //new 一个主窗体
com.系统管理ToolStripMenuItem.Enabled = true; //设置主窗体的系统管理可用
com.ShowDialog(); //此处应用showdialog,否则会出现两个窗口,有一个不符合要求
}
判断是否为系统管理员,若是则设置主窗口中的系统管理ToolStripMenuItem.Enabled 为可操作!
运行程序效果如下:
系统管理员只能使用系统管理员功能了,其它管理员功能仍然是false
本功能实现的要点是设置该控件相应地方的Modifiers属性为public,这和C#中的类是一样的,添加一个类的话默认也是private属性,需要自己修改为public才可以在其它地方调用!
至此,可以在子窗口设置主窗口的控件的enabled属性了!IT学习需要各位的分享,望大家发扬分享精神!