在做一个小程序的时候,偶然发现了使用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 == "" || userpwd == "")//因为此处只是个小例子,故不做数据库什么的操作了,直接写死。
{
string userright = "";
useright useright = new useright(this,userright );//传权限(userright)值
useright.Show();
this.Hide();
}
else if (userName == "" || userpwd == "")
{
string userright = "";
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的时候可以使用userright1的操作
{
userright2ToolStripMenuItem.Enabled = false ;
}
else if(userright =="")//权限设定userright=2的时候可以使用全部
{
userright1ToolStripMenuItem1.Enabled = true ;
userright2ToolStripMenuItem.Enabled = true ;
}
}
private void userright1ToolStripMenuItem1_Click(object sender, EventArgs e)
{
if(userright =="")
{
MessageBox.Show("恭喜你该权限可以使用");
}
} private void userright2ToolStripMenuItem_Click(object sender, EventArgs e)
{
if (userright == "")
{
MessageBox.Show("恭喜你该权限可以使用");
}
}
}
}

然后调试一下,是不是感觉萌萌哒,当你用1和1登录的时候,userright2条目是不是灰色的?然后用2和2登录的时候,是不是两个都可以用了!

学习笔记-menusript控件中条目权限设置使用的更多相关文章

  1. iOS学习笔记——基础控件(上)

    本篇简单罗列一下一些常用的UI控件以及它们特有的属性,事件等等.由于是笔记,相比起来不会太详细 UIView 所有UI控件都继承于这个UIView,它所拥有的属性必是所有控件都拥有,这些属性都是控件最 ...

  2. IOS 学习笔记(6) 控件 文本域(UITextField)的使用方法

    UITextField控件的诸多特性都和UITextView相似,比如成为输入文本焦点时键盘自动显示,支持长按弹出动作选项,能够接收输入事件(开始输入,修改内容,结束输入和点击回车等). 1.特有的特 ...

  3. android菜鸟学习笔记13----Android控件(二) 自定义控件简单示例

    有时候,可能觉得系统提供的控件太丑,就会需要自定义控件来实现自己想要的效果. 以下主要参考<第一行代码> 1.自定义一个标题栏: 系统自带的标题栏很丑,且没什么大的作用,所以我们之前会在o ...

  4. Python:GUI之tkinter学习笔记1控件的介绍及使用

    相关内容: tkinter的使用 1.模块的导入 2.使用 3.控件介绍 Tk Button Label Frame Toplevel Menu Menubutton Canvas Entry Mes ...

  5. ios 学习笔记之控件属性

    1.文本框 设置密码属性:Secure Text Entry 勾选; 设置文本框带清除属性: Clear Button =Is always visible;  默认是不带清除属性:Never app ...

  6. jQuery学习笔记(控件位置定位、尺寸大小的获取等)

    想做一个幽灵按钮出来,效果大概如下图: 当点击按钮的时候,会有四根线条从四个方向飞入,经历从“无-有-无”的闪入过程. 那么我的设计想法是,先在HTML中定义一个按钮,然后在jQuery中设计按钮点击 ...

  7. [开发笔记]-DataGridView控件中自定义控件的使用

    最近工作之余在做一个百度歌曲搜索播放的小程序,需要显示歌曲列表的功能.在winform中采用DataGirdView来实现. 很久不写winform程序了,有些控件的用法也有些显得生疏了,特记录一下. ...

  8. IOS 学习笔记(5) 控件 文本视图(UITextView)的使用方法

    相对于UILabell所支持的较短文本内容,UITextView对于长文本的支持更好.UITextView能够以滚动的方式全部浏览到长文本,并且就像UILabel那样,从ISO6,他也提供了对NSAt ...

  9. IOS 学习笔记(4) 控件 标签(UILabel)的使用方法

    虽说Label的中文翻译是标签标记,但它其实是一个静态文本内容的展现控件. 一般来说,UILabel只是一个只读的文本视图,开发者可以利用UiLabel来展示内容长度有固定上限的文字内容.并且,UIL ...

随机推荐

  1. 改错+GetMemory问题

    试题1: void test1() { ]; "; strcpy( string, str1 ); } 试题2: void test2() { charstring[],str1[]; in ...

  2. [转载]vs2010中臃肿的ipch和sdf文件

    使用VS2010建立C++解决方案时,会生成SolutionName.sdf和一个叫做ipch的文件夹,这两个文件再加上*.pch等文件使得工程变得非常的庞大,一个简单的程序都会占用几十M的硬盘容量, ...

  3. 在Yii框架中使用PHPExcel

    PHPExcel是一个比较好用的php读取excel文件的类库,今天遇到了在yii中如何加载PHPExcel类文件的问题,因为Yii的autoload机制是安装类名去找文件,即文件名就是相应的类名,而 ...

  4. mysql数据库数据恢复方案概括总结

    方案一:(传统方案) 备份+binlog日志增量: 方案二:(针对update.delete语句忘加where的情况) Binlog日志文件中保存有错误操作之前和之后的两组数据,将错误操作之前的数据修 ...

  5. 关于web标准的理解(转)

    从开始接触所谓web标准化,差不多也有两年多的时候了吧.从最初的疑惑和彷徨一直到现在,经历了每一个阶段.这段过程是痛苦的也是开心的,痛苦的是这个过程中没有人可以帮你答疑解惑,所有的问题都要你自己去解决 ...

  6. easyui控件的加载顺序

    使用easyui做布局时,会模仿窗口程序界面,做出一些较复杂的布局.按由外层到内层的顺序: (最外层)panel->tabs->tabs1 ->tabs2->layout-&g ...

  7. FMDB将对象放进数据库[二](使用runtime)

    @import url(http://i.cnblogs.com/Load.ashx?type=style&file=SyntaxHighlighter.css);@import url(/c ...

  8. What does cmd /C mean? [closed] 关于nodejs的子进程部分

    之前一直很不明白为什么 child_process.spawn(command[, args][, options]) shell <Boolean> | <String> I ...

  9. MFC socket网络通讯核心代码

    服务器: AfxSocketInit();//初始化,必须执行这个函数socket才能正常执行 server.Create(10086); server.Listen(10); while(1) { ...

  10. Embedded software develop step

    x86 –>embeded so you you  must familiar with x86 first-