System.Web.UI.WebControls.Button单击事件未触发

时间:2018-02-26 21:31:40

标签: c# asp.net button

在我的C#代码中,我有动态创建按钮的功能

private Button createPageButton(string id, string text, int navTo = 0)
{
    Button btn = new Button();
    btn.ID = id;
    btn.Text = text;
    btn.Click += new EventHandler(btnNavigate_To_Page);
    return btn;
}

哪个设置如下:

C#:

public void someMethod()
{
    Button btnPage_First = createPageButton("btnFirst_Page", "First", 1);
    panelNavPageButtons.Controls.Add(btnPage_First);
}

ASPX:

 <asp:Panel ID="panelPageNavButtons" CssClass="pageNavBtns" runat="server"></asp:Panel>

问题: btnNavigate_To_Page事件未触发。在Page_Load 中没有调用createPageButton方法,但如果我在面板中包含一个asp按钮(见下文),那么我在服务器端添加的任何其他按钮都能正常工作

<asp:Panel ID="panelPageNavButtons" CssClass="pageNavBtns" runat="server">
    <asp:Button ID="btnPage_Prev" runat="server" OnClick="btnNavigate_To_Page" />
 </asp:Panel>

我想动态设置所有按钮,而不在.aspx文件中包含对 btnNavigate_To_Page 的任何引用

0 个答案:

没有答案