用代码的话是这样的textBox.Click+=new EventHandler(textBox_Click);能不能不用代码添加,VS2003 界面上这种功能是怎么实现的?

解决方案 »

  1.   

    就像good_sun(汉堡+泡面)说的,可以那样加 其实是这样的:
    textBox.Click+=new EventHandler(textBox_Click);
    textBox这个控件有个Click事件,这个事件其实在内部是指向一个委托链,这里的+=表示把后面的
    new EventHandler(textBox_Click);添加到委托链上面,如果Click事件发生,委托链上的所有注册函数都会被调用,比如来个
    textBox.Click += new EventHandler(myFunc);
    private void myFunc(object sender, System.EventArgs e)
    {...}
    如果点textBox的话,text_Click和myFunc都会被调用的上面双击生成的事件函数textBox_Click只是VS帮你取得名字,你可以随便取,所以,按上面说的,你可以不用在VS2003 界面上来添,可以手动添,只要控件有相应的事件就可以了,不过注意注册的函数(比如myFunc)要和委托定义的函数原形一致,比如一般的就是这种
    public void XXXX(object sender, System.EventArgs e)