返回首页
当前位置: 主页 > 网络编程 > .Net实例教程 >

C#通过按钮TAG属性判断是否点击按钮 代码

时间:2013-06-27 21:30来源:知行网www.zhixing123.cn 编辑:麦田守望者

在进行C#窗体应用程序开发中相信有许多人肯定遇到这样的问题:一大堆的按钮,要对每个按钮做Click点击事件,而每个按钮部分功能代码可以复用,编写代码又费时费力。有没有更好的解决方法呢 ?答案是肯定的~

今天我就遇到了这样的问题,需要判断那个按钮点击了,然后查阅资料,发现可以利用控件的tag属性来做判断。先介绍下控件的tag属性吧:
 

Control.Tag 属性
获取或设置包含有关控件的数据的对象。
属性值
类型:System.Object
一个 Object,它包含有关控件的数据。默认为 null。

 

简单来说tag可以理解为控件的一个额外数据储存变量,可以用来储存一个标记等等,怎么利用起来呢?我们都知道所有button按钮点击都是触发Click事件,为什么我们一定要对每个按钮分别做一个Click事件?难道我们不可以把所有按钮的事件都指向一个Click事件?答案就是可以,首先我们一个窗体从工具箱拉三个按钮button1,button2,button3,在属性设置里分别对每个按钮的Tag属性设置值1,2,3,然后进入代码编辑页,根据Click事件的定义格式,自定义一个按钮的Click事件:

//自定义一个Button按钮Click事件
private void Btn_Click(object sender, EventArgs e)
{
  Button bt=(Button)sender;//取得当前点击按钮所有数据,不同控件按钮不同类型
  switch(bt.Tag.ToString())
     {
         case "1":
             //当点击button1按钮时执行代码
             break;
         case "2":
             //当点击button2按钮时执行代码
             break;
         case "3":
             //当点击button3按钮时执行代码
             break;
         default:
             break;
     }
}

然后在每个按钮事件属性设置里的Click都指向Btn_Click,这样就可以实现多个按钮共用一个Click事件,并判断哪个点击了哪个按钮,tag属性的值可以是任何,根据自己的需要更改。这个可以应用在需要判断多个按钮是否点击,并且按钮间代码复用性高的时候使用,不需要苦逼的对每个按钮做事件了~

不知通过以上的说明,有木有解决你的问题?有不懂的地方或者有什么更好的建议,欢迎留言交流~

------分隔线----------------------------
标签(Tag):C# C#实例教程 c#基础教程 C#源代码 c#技巧
------分隔线----------------------------
推荐内容
猜你感兴趣