onserverclick在运行时添加属性时不会触发c#

问题描述:

我在C#web窗体的运行时添加一个按钮。当按钮被调用时,我需要调用一个函数btnEdit_click。不知何故该函数没有被调用。onserverclick在运行时添加属性时不会触发c#

代码如下。请帮助

 protected void btnEdit_Click(object sender, EventArgs e) 
    { 
     Response.Redirect("~/Setup.aspx"); 
    } 

       HtmlGenericControl EditButton = new HtmlGenericControl("button"); 
       EditButton.Attributes["class"] = "btn btn-default"; 
       EditButton.Attributes["id"] = "editButton"; 
       EditButton.Attributes["runat"] = "server"; 
       EditButton.Attributes["OnServerClick"] = "btnEdit_Click"; 
       EditButton.InnerText = "Edit"; 

<html xmlns="http://www.w3.org/1999/xhtml"> 
    <head runat="server"> 
    <title></title> 
    </head> 
    <body> 
    <form id="form1" runat="server"> 
    </form> 
    </body> 
    </html> 



    protected void Page_Load(object sender, EventArgs e) 
    { 
     HtmlButton EditButton = new HtmlButton(); 
     EditButton.Attributes["class"] = "btn btn-default"; 
     EditButton.Attributes["id"] = "editButton"; 
     EditButton.Attributes["runat"] = "server"; 
     EditButton.InnerText = "Edit"; 
     EditButton.ServerClick += btnEdit_Click; 

     this.form1.Controls.Add(EditButton); 
    } 
    protected void btnEdit_Click(object sender, EventArgs e) 
    { 
     Response.Redirect("~/Setup.aspx"); 
    } 
+0

我想通了一段时间回来,但它的工作原理。谢谢!! – Zee