我正在创建一个包含几个按钮的表格。这些按钮连接到触发更新特定数据库项的方法的事件。由于某些原因,事件没有正确连接。根本不执行应该执行的方法。我做错了什么
伪代码:
public void createTable(List<BLL> itemlist)
{
//newtable;
foreach (BLL item in itemlist)
{
//newrow;
//create multiple cells...
TableCell cell = new TableCell();
Button button = new Button();
button.ID = "buttonname" + counter.ToString();
button.Text = "Update";
button.Click += new System.EventHandler(this.UpdateButton_Click);
cell.Controls.Add(button);
//addCellToTableRow
}
//addRowToTable
}
public void UpdateButton_Click(object sender, EventArgs e)
{
//logic to get sender and update database.
//debugger doesn't get to the breakpoint here.
}
答案 0 :(得分:4)
您需要阅读ASP.NET page life cycle。
当您创建动态控件时,您还需要在每个帖子上重新创建它们 - 最好在OnInit
事件处理程序中完成。
如果您不这样做,则对象和任何附加事件不存在,因此事件不会触发它们。