多个控件事件用一个事件处理方法来处理

来源:互联网 发布:卡门 知乎 编辑:程序博客网 时间:2024/06/15 08:36

有时候多个相同控件的事件若一一处理比较麻烦,而且影响代码美观,这时若在一个统一的方法里处理这些事件是个比较好的选择。

以winform上的三个button为例来说明我的处理方法。

1,将三个button的click事件绑定到一个事件处理方法上:

            this.button1.Click += new EventHandler(speakHandler);
            this.button2.Click += new EventHandler(speakHandler);
            this.button3.Click += new EventHandler(speakHandler);

2,处理事件

        private void speakHandler(object sender, EventArgs e)
        {
            switch ((sender as Button).Text)
            {
                case "button1":
                    MessageBox.Show(button1.Text);
                        break;
                case "button2":
                    MessageBox.Show(button2.Text);
                        break;
                case "button3":
                    MessageBox.Show(button3.Text);
                    break;
                default:
                    break;
            }
 
        }

值得注意的是,switch中按钮的判断:到底哪个按钮引发当前事件。

总结:这个是十分菜鸟的东西,只为自己记录一下。

本文出自 “独钓寒江雪” 博客,请务必保留此出处http://zhaojie.blog.51cto.com/1768828/913043

0 0
原创粉丝点击