动态生成按钮,添加点击事件,但是时间不响应

zhanhongtu418 2008-07-03 05:09:36
public void courses_forminit()
{
.....
update_btn = new Button();
update_btn.ID = "update" + ds.Tables[0].Rows[i][0].ToString();
update_btn.Width = 65;
update_btn.Height = 23;
update_btn.Text = "修改";
update_btn.CssClass = "button";
update_btn.Click += new EventHandler(update_btn_Click);
l_tc.Controls.Add(update_btn);
........
}
}
private void update_btn_Click(object sender,EventArgs e)
{
。。。。。。
}
在courses_forminit()中自动生成一个修改按钮,第二段代码是他的执行事件,可是代码不执行这个时间,打了断点根本不走这段程序,我在网上查,说得把courses_forminit()放在page_load里,我已经放里了,可还是不好使,请能人给些指点,谢谢!
...全文
259 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
carl974 2008-07-05
  • 打赏
  • 举报
回复

Partial Class 动态控件
Inherits System.Web.UI.Page

Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Dim btn As New Button
btn.Text = "动态按钮"
btn.ID = "btnDynamic"
btn.Height = 20
btn.Width = 80
AddHandler btn.Click, AddressOf btnDynamic_click
Page.Form.Controls.Add(btn)
End Sub

Private Sub btnDynamic_click(ByVal sender As Object, ByVal e As EventArgs)
Response.Write("点击了动态按钮")
End Sub

End Class

skigil 2008-07-04
  • 打赏
  • 举报
回复
VB2005

addhandler update_btn_Click.click,addressof update_btn_Click
在定义后加入
xiaoqhuang 2008-07-04
  • 打赏
  • 举报
回复
看我3楼的红字。 private 方法页面是访问不到的。
sa123789 2008-07-04
  • 打赏
  • 举报
回复
定义时用html时间的Requeset.form,该按钮--可能
我实现过一次、忘了代码
brz97 2008-07-03
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 amandag 的回复:]
说得把courses_forminit()放在page_load里,我已经放里了,可还是不好使
==
这样应该可以,看看楼主的代码
[/Quote]
放在init里面试试
可能是postback的时候没有重新绑定事件

像事件绑定这样的事一定要每次调用都绑定才行

另外还要注意一点,动态生成的btn不要每次调用都new,否则永远不会触发事件(因为每次都是new的,怎么触发?)
amandag 2008-07-03
  • 打赏
  • 举报
回复
说得把courses_forminit()放在page_load里,我已经放里了,可还是不好使
==
这样应该可以,看看楼主的代码
哈皮玩 2008-07-03
  • 打赏
  • 举报
回复


private void Page_Load(object sender, EventArgs e)
{
Button btn = new Button();
btn.Text = "Test";
btn.ID = "btn001";
btn.Width = 53;
btn.Height = 23;
btn.Click += new EventHandler(btn_Click);
this.form1.Controls.Add(btn);
}

void btn_Click(object sender, EventArgs e)
{
Response.Write("<script language='javascript'>alert('Add a new Button!');</script>");
}


我这样写就可以啊,不知道你那里错在哪了。
xiaoqhuang 2008-07-03
  • 打赏
  • 举报
回复
protected void update_btn_Click(object sender,EventArgs e)
kofkyo 2008-07-03
  • 打赏
  • 举报
回复
courses_forminit()
不要判断ispostback
zkcq2004 2008-07-03
  • 打赏
  • 举报
回复
update_btn.Click += new EventHandler(update_btn_Click);

62,047

社区成员

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

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

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

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