以编程方式创建 asp:Button?
Posted
技术标签:
【中文标题】以编程方式创建 asp:Button?【英文标题】:Creating an asp:Button programmatically? 【发布时间】:2010-09-16 07:47:24 【问题描述】:我正在使用我的代码隐藏页面以编程方式创建一个保存按钮:
Button btnSave = new Button();
btnSave.ID = "btnSave";
btnSave.Text = "Save";
但是我认为这必须创建一个 html 按钮或者可能需要其他东西,因为我似乎无法在下一行中设置 OnClick 属性,我可以指定 OnClientClick 但这不是我想要设置的那个。
【问题讨论】:
【参考方案1】:还请记住,当用户单击按钮时,它将强制回发,这会创建您的页面类的新实例。您创建按钮的旧实例已经消失。您需要确保该类的这个新实例还添加了您的按钮——它是事件处理程序——在加载阶段之前,否则事件处理程序将不会运行(页面的加载事件但是仍然会)。
【讨论】:
【参考方案2】:如果您想在后面的代码中为 OnClick 事件注册一个处理程序,您将使用 += 语法向 OnClick 添加一个处理程序。
//Add the handler to your button, passing the name of the handling method
btnSave.Click += new System.EventHandler(btnSave_Click);
protected void btnSave_Click(object sender, EventArgs e)
//Your custom code goes here
【讨论】:
对不起?!我知道我很厚,但这个答案对我来说毫无意义,什么是 += 语法?【参考方案3】:Button btnSave = new Button();
btnSave.ID = "btnSave";
btnSave.Text = "Save";
btnSave.Click += new System.EventHandler(btnSave_Click);
protected void btnSave_Click(object sender, EventArgs e)
//do something when button clicked.
【讨论】:
以上是关于以编程方式创建 asp:Button?的主要内容,如果未能解决你的问题,请参考以下文章