C# DynamicCallyCreated按钮的asp.net事件处理程序

C# DynamicCallyCreated按钮的asp.net事件处理程序,c#,asp.net,button,dynamic,event-handling,C#,Asp.net,Button,Dynamic,Event Handling,我在代码隐藏中创建了一个按钮,如下所示: some method { Button btnExportToExcel = new Button(); btnExportToExcel.Text = "Export To Excel"; btnExportToExcel.Click += new EventHandler(btnExportToExcel_Click); pnlListView.Controls.Add(btnExportToExcel); } p

我在代码隐藏中创建了一个按钮,如下所示:

some method {
    Button btnExportToExcel = new Button();
    btnExportToExcel.Text = "Export To Excel";
    btnExportToExcel.Click += new EventHandler(btnExportToExcel_Click);
    pnlListView.Controls.Add(btnExportToExcel);
}

protected void btnExportToExcel_Click(object sender, EventArgs e)
        {
            //do something
        }
问题是我无法从事件方法执行代码


为什么会这样?

是否要在preinit事件处理程序中向页面添加控件

是否在preinit事件处理程序中将控件添加到页面

是否在preinit事件处理程序中将控件添加到页面

是否在preinit事件处理程序中将控件添加到页面

请在页面的Init事件处理程序中添加动态控件,以便正确触发ViewState和事件。

请在页面的Init事件处理程序中添加动态控件,以便正确触发ViewState和事件。

请在页面的Init事件处理程序中添加动态控件,以便ViewState和事件被正确触发。

请在页面的Init事件处理程序中添加动态控件,以便ViewState和事件被正确触发。

您必须将按钮添加到任何控件

 protected void Page_Load(object sender, EventArgs e)
    {
        Button btnExportToExcel = new Button();
        btnExportToExcel.Text = "Export To Excel";
        btnExportToExcel.Click += new EventHandler(btnExportToExcel_Click);
        //this is add the button to the form1
        this.form1.Controls.Add(btnExportToExcel);
    }

    void btnExportToExcel_Click(object sender, EventArgs e)
    {
        //...
        Response.Write("click me...");
    }

您必须将该按钮添加到任何控制器

 protected void Page_Load(object sender, EventArgs e)
    {
        Button btnExportToExcel = new Button();
        btnExportToExcel.Text = "Export To Excel";
        btnExportToExcel.Click += new EventHandler(btnExportToExcel_Click);
        //this is add the button to the form1
        this.form1.Controls.Add(btnExportToExcel);
    }

    void btnExportToExcel_Click(object sender, EventArgs e)
    {
        //...
        Response.Write("click me...");
    }

您必须将该按钮添加到任何控制器

 protected void Page_Load(object sender, EventArgs e)
    {
        Button btnExportToExcel = new Button();
        btnExportToExcel.Text = "Export To Excel";
        btnExportToExcel.Click += new EventHandler(btnExportToExcel_Click);
        //this is add the button to the form1
        this.form1.Controls.Add(btnExportToExcel);
    }

    void btnExportToExcel_Click(object sender, EventArgs e)
    {
        //...
        Response.Write("click me...");
    }

您必须将该按钮添加到任何控制器

 protected void Page_Load(object sender, EventArgs e)
    {
        Button btnExportToExcel = new Button();
        btnExportToExcel.Text = "Export To Excel";
        btnExportToExcel.Click += new EventHandler(btnExportToExcel_Click);
        //this is add the button to the form1
        this.form1.Controls.Add(btnExportToExcel);
    }

    void btnExportToExcel_Click(object sender, EventArgs e)
    {
        //...
        Response.Write("click me...");
    }


什么时候叫什么方法?应该在PreInit事件中添加Dinamic控件何时调用某种方法?应该在PreInit事件中添加Dinamic控件何时调用某种方法?应该在PreInit事件中添加Dinamic控件何时调用某种方法?Dinamic控件应添加到PreInit Event中抱歉,我将其添加到面板中。编辑了上面的代码。抱歉,我正在将其添加到面板。编辑了上面的代码。抱歉,我正在将其添加到面板。编辑了上面的代码。抱歉,我正在将其添加到面板。编辑了上面的代码。它在页面加载方法中加载,并在
if(!IsPostBack)
statamentOk中加载,在Pre\u Init中修复了该问题。谢谢。还有一个小问题,如果我想在有条件创建的其他控件之后添加按钮控件,该怎么办?这意味着它们可能存在于pre_Init中。它加载在Page_Load方法中,并在
if(!IsPostBack)
statamentOk中。在pre_Init中加载它可以修复此问题。谢谢。还有一个小问题,如果我想在有条件创建的其他控件之后添加按钮控件,该怎么办?这意味着它们可能存在于pre_Init中。它加载在Page_Load方法中,并在
if(!IsPostBack)
statamentOk中。在pre_Init中加载它可以修复此问题。谢谢。还有一个小问题,如果我想在有条件创建的其他控件之后添加按钮控件,该怎么办?这意味着它们可能存在于pre_Init中。它加载在Page_Load方法中,并在
if(!IsPostBack)
statamentOk中。在pre_Init中加载它可以修复此问题。谢谢。还有一个小问题,如果我想在有条件创建的其他控件之后添加按钮控件,该怎么办?这意味着它们可能存在于pre_init