写了一个用户控件,定义了一个委托,写法如下:
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);
解决方案 »
- 紧急 求解
- asp.net CMS 问题。大家一起讨论。
- 如何把 编译好的 dll 安装到 c:\windows\assembly 目录
- 新闻系统中,如何实现当一则新闻中汉字达到N个时就自动分页
- 关于Cookie跨域的问题,求大神解答
- 求助阿,急~~~
- 各位大侠帮帮忙,在C#中怎样编写下载文件代码阿?上传很容易,下载怎么写啊?各位有知道的帮帮忙吧!受小女子一拜!
- 在将json数据反序列化成对象时报错
- ASP.NET中URL是默认使用绝对路径吗,我在做程序时发现是绝对路径,请给讲讲吧
- ★★高分请高手帮忙分析一下错误原因!!!
- 请问怎样在asp.net中将图片存入SQL Server 2000并能读出来使用?
- ASP.NET数据库连接???
不放在InitializeComponent中而放在Load事件中在页面上添加或删除一个控件时就不会没有了!