学习笔记-menusript控件中条目权限设置使用
在做一个小程序的时候,偶然发现了使用menusript控件做权限设置的方法,仅此标记,以供参考。
首先创建一个实例:testuseright.sln,
在项目文件里创建两个窗体:Form1.cs和useright.cs;Form1.cs窗体中添加两个textbox:textbox1;textbox2;还有一个button。
双击button,创建button_click事件
private void button1_Click(object sender, EventArgs e) { string userName = textBox1.Text; string userpwd = textBox2.Text; if (userName == "1" || userpwd == "1")//因为此处只是个小例子,故不做数据库什么的操作了,直接写死。 { string userright = "1"; useright useright = new useright(this,userright );//传权限(userright)值 useright.Show(); this.Hide(); } else if (userName == "2" || userpwd == "2") { string userright = "2"; useright useright = new useright(this,userright );//传值 useright.Show(); this.Hide(); } else { MessageBox.Show("输入错误!"); } }
然后在useright.cs窗体中,添加一个menusript控件,下拉菜单中写一个userright1;userright2;双击useright页面进入cs页,代码这么写:
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace testuseright { public partial class useright : Form { Form1 Form1; string userright; public useright() { InitializeComponent(); } public useright(Form1 Form1, string userright): this() { this.Form1 = Form1; this.userright = userright; } private void useright_Load(object sender, EventArgs e) { string userright = this.userright ; if (userright ==null )//权限值为空的话,两个都是不可用的 { userright1ToolStripMenuItem1.Enabled = false ; userright2ToolStripMenuItem.Enabled = false ; } else if(userright =="1")//设定权限值为1的时候可以使用userright1的操作 { userright2ToolStripMenuItem.Enabled = false ; } else if(userright =="2")//权限设定userright=2的时候可以使用全部 { userright1ToolStripMenuItem1.Enabled = true ; userright2ToolStripMenuItem.Enabled = true ; } } private void userright1ToolStripMenuItem1_Click(object sender, EventArgs e) { if(userright =="1") { MessageBox.Show("恭喜你该权限可以使用"); } } private void userright2ToolStripMenuItem_Click(object sender, EventArgs e) { if (userright == "2") { MessageBox.Show("恭喜你该权限可以使用"); } } } }
然后调试一下,是不是感觉萌萌哒,当你用1和1登录的时候,userright2条目是不是灰色的?然后用2和2登录的时候,是不是两个都可以用了!