写了一个用户控件,定义了一个委托,写法如下:  
       public  delegate  void  DateClickEventHandler(object  sender,  System.EventArgs  e);  
 
public  class  btnDateShow  :  System.Web.UI.UserControl  
{  
                       private  DateClickEventHandler  dateClickHandler;  
                       public  event  DateClickEventHandler  OnClick  
                       {  
                                   add    
                                   {  
                                               dateClickHandler  +=  value;  
                                   }  
                                   remove    
                                   {  
                                               dateClickHandler  -=  value;  
                                   }  
                       }  
 
                       private  void  InitializeComponent()  
                       {  
                                   this.btnPrevious.Click  +=  new  System.EventHandler(this.ButtonEventHandler);  
                                                                       this.Load  +=  new  System.EventHandler(this.Page_Load);  
 
                       }  
 
                       protected  void  ButtonEventHandler(Object  sender,System.EventArgs  e)  
                       {  
                                   if  (!object.Equals(dateClickHandler,null))  
                                   {  
                                               dateClickHandler(sender,e);  
                                   }  
                       }  
}  
使用该控件的代码如下:  
                       protected  btnDateShow  bds;  
           private  void  InitializeComponent()  
                       {          
                                   this.Load  +=  new  System.EventHandler(this.Page_Load);  
                                   bds.OnClick            +=new  DateClickEventHandler(bds_OnClick);  
 
                       }  
                       private  void  bds_OnClick(object  sender,  System.EventArgs  e)  
                       {  
                                   dgDataBind();  
                               }  
           我的问题是当我在页面上添加或删除一个控件时,定义委托的代码就不见了,有什么解决的好办法吗?  
bds.OnClick            +=new  DateClickEventHandler(bds_OnClick);