动态添加点击事件无效

问题描述 投票:0回答:1

这是第一次提问者。

我在VS2017中有CSharp代码,如下所示 - 它只放在动态表的第一行:

 if(intN == 1)
 {
    tc = new TableCell();
    tc.CssClass = "FNT_14_Bold";
    btn = new Button();
    btn.ID = "btnSubmitCurrentUserChanges";
    btn.Height = 25;
    btn.Width = 261;
    btn.Text = "Submit Current Users Changes";
    btn.BackColor = ColorTranslator.FromHtml("#006F6F");
    btn.ForeColor = Color.White;
    btn.Click += new EventHandler(btnUsers_Click);
    tc.Controls.Add(btn);
}
else
{
    tc = new TableCell();
    tc.VerticalAlign = VerticalAlign.Top;
    tc.HorizontalAlign = HorizontalAlign.Center;
    tc.CssClass = "FNT_14";
}

protected void btnUsers_Click(object sender, EventArgs e)
{
    SubmitData();
}

当我点击按钮时,它会触发,但仅限于Page_Load。有关获得实际活动的任何建议吗?

在此先感谢... StackOverflow一直是一个很好的帮助。

c# button dynamic onclick
1个回答
0
投票

我假设您的代码的第一部分来自Page_Load。你需要将它移动到Page_Init。这样,动态创建的控件就可以在页面加载时触发事件。

© www.soinside.com 2019 - 2024. All rights reserved.