一个usercontrol如何能从这个userctrl的控件如button上向组建所在窗体发出一个事件

定义一个usercontrol如果上面放一个button控件,如何能在使用这个usercontrol的窗口上捕捉到button被点击的事件呢

(1)在自定义控件中添加自定义事件

C# code
   
             public event EventHandler ButtonClick = 

null;


(2)在控件构造函数中添加button.click事件声明
C# code
   
             public UserControlButton()

        {

            InitializeComponent();

          //  button1.Click += new EventHandler(button1_Click);

        }


(3)在button.click事件中传递事件触发参数
C# code
   
             private void button1_Click(object sender 

, EventArgs e)

        {

            if ( ButtonClick != null )

            {

                ButtonClick(sender , e); 

            }

        }


(4)在form构造函数中声明ButtonClick事件
 
C# code
   
              userControlButton1.ButtonClick += 

new EventHandler(userControlButton1_ButtonClick);


(5)声明ButtonClick事件后,在From中就产生一个 void userControlButton1_ButtonClick(object sender , EventArgs e)方法

C# code
   
             void 

userControlButton1_ButtonClick(object sender , EventArgs e)

        {

           //在这里写入你的事件处理程序 throw new 

NotImplementedException();

        }


你可能感兴趣的:(button)