动态生成按钮的click事件怎么不执行???

conner 2005-04-04 09:46:17
private void Button1_Click(object sender, System.EventArgs e)
{
Button myBt = new Button();
myBt.Text="单击";
myBt.ID ="Button4";
myBt.Click += new System.EventHandler(this.dd);
Page.Controls[1].Controls.Add( myBt );
}
我把以上代码放到Page_Load可以执行,但是我是在单击Button1的时候才生成这个按钮,单击Button1动态生成的按钮则不执行dd方法。

请高手指点。

public void dd(object sender, System.EventArgs e)
{
myDbAccess.Alert("执行",Page);
}
...全文
594 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
webdiyer 2005-04-07
  • 打赏
  • 举报
回复
cuike519(marshal) 说得对,这个问题是因为动态添加的控件无法保存状态引起的,换一种方法可以实现你的要求,那就是在页面上事先创建这个按钮,只是把它的Visible属性设为false,在点击前一按钮时再将它的Visible设为true,这样它的Click事件就会正常被激发。
LoveCherry 2005-04-05
  • 打赏
  • 举报
回复
在IsPostBack的时候也要生成按钮的
  • 打赏
  • 举报
回复
学习 cuike519(marshal)
minghui000 2005-04-05
  • 打赏
  • 举报
回复
up
conner 2005-04-04
  • 打赏
  • 举报
回复
???
ziffle 2005-04-04
  • 打赏
  • 举报
回复
asp 是无状态连接的,你第二次请求你判断了是否是回传页,然后把代码写在了..里面,所以你并没有再创建控件并进行初始化,你的控件的事件也不可能注册成功,不可能执行了
LoveCherry 2005-04-04
  • 打赏
  • 举报
回复
http://community.csdn.net/Expert/topic/3901/3901685.xml?temp=.6412012
conner 2005-04-04
  • 打赏
  • 举报
回复
我发现只有放到page_load里才执行。放到
if(!IsPostBack)
{
放到这里就不执行了!!!!
}
conner 2005-04-04
  • 打赏
  • 举报
回复
哥们我上边已经加了myBt.Click += new System.EventHandler(this.dd);
xxuu503 2005-04-04
  • 打赏
  • 举报
回复
要添加一下事件:

mybt.click+=new eventhandler(address of 函数名字)

//添到你的button加入之后
conner 2005-04-04
  • 打赏
  • 举报
回复
急呀!
nadoo 2005-04-04
  • 打赏
  • 举报
回复
楼上的强, 我们是应该学习ASP.Net的处理机制.
cuike519 2005-04-04
  • 打赏
  • 举报
回复
首先我想说明该引起该问题的原因:
由于页面执行周期的原因,你的事件处理函数中构造的对象在dopostback之后没有被重新构造出来,这时候页面的控件树中没有这个控件(上次动态创建的),当然无法激发该控件的事件处理函数。HTML是无状态的,在重新加载页面需要重新构造上次的控件包括你动态创建的。

Page_Load和Init方法都先于事件处理程序执行,所以你只要在这两个函数中重新构造你的控件就可以激发你动态添加的控件的事件了!
conner 2005-04-04
  • 打赏
  • 举报
回复
???????

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧