日期:2014-05-17  浏览次数:20856 次

【Winfrom】 新手求教,在线等



如上图,我有大约20个工位,然后每个工位都需要3个零件, 每个文本框都会调用双击事件然后调用 一个获取零件的窗体, 我想问的是,怎么简化代码啊?  20个工位,每个工位都需要3个窗体,我不能写60个 textbox的 双击事件吧, 所以真心求教各路大神解答。





------解决方案--------------------
写法如下

private void textBox1_DoubleClick(object sender, EventArgs e)
        {
            //还原事件源 简单的说就是哪个文本框触发的这个事件
            //就把哪个文本框还原出来
            TextBox text = sender as TextBox;
            MessageBox.Show(text.Text);
        }


事件共享方法两种
一种是在设计视图的属性里选择事件 然后共享


另外一种是代码共享 所有同类控件的同类事件绑定到一个已有的事件上

private void Form7_Load(object sender, EventArgs e)
        {
            //以此类推 可以有textBox3,textBox4....
            this.textBox2.DoubleClick += new EventHandler(textBox1_DoubleClick);
        }