我做的是 windows程序 ,我自定义一个控件,含有多个button,我想把它做为控件来用时,每个button指向另一个窗体的tabcontrol的不同的tabpage,我用了自定义事件和委托都不行啊,请各位高手指点一下,最好给点代码参考一下. 我想了好几天了,还没办法解决啊,很郁闷啊

解决方案 »

  1.   

    你的多个button封装在一个自定义控件中,得向外开放每一个Button的Click事件,这样你就可以调用该控件,点击不同的button,得到不同的事件,下面是示例,楼主参考下:
    //*在你的UserControl中,   
      public   event   EventHandler   TextBoxClick;//这里是自定义TextBox的Click事件   
      //...   
      this.TextBox.Click   +=   new   EventHandler(TextBox_Click);//这里订阅事件   
      //...   
      private   void   TextBox_Click(object   sender,System.EventArgs   e)//这里处理事件   
      {   
          if   (TextBoxClick!=   null)   
          {   
              TextBoxClick(sender,e);//引发事件   
          }   
      }   
      //*在外部调用时   
      UserControl.TextBoxClick   +=   new   EventHandler(TextBoxClick);   
        
      //处理事件   
      private   void   TextBoxClick(object   sender,System.EventArgs   e)//这里处理事件   
      {   
          //...   
      }   
      

  2.   

    ydsunny 说的不错, 在简单点的是把你需要点的 BUTTON PUBLIC 出来。这样在外面直接注册事件就好了。
    当然这样不是很规范。