我在asp表中动态添加行。在表的每一行中,我还包括一个具有SelectProduct_Click事件的按钮。
问题是即使我正在注册click事件,事件也不会被触发。
正在以这种方式添加按钮:
btnSelect = new Button();
btnSelect.ID = "btnSelect";
btnSelect.CommandArgument = od.ProductId;
btnSelect.Click += new EventHandler(this.SelectProduct_Click);
btnSelect.CssClass = "button";
btnSelect.Text = "Select";
cell = new TableCell();
cell.Controls.Add(btnSelect);
row.Cells.Add(cell);
如何点击我的按钮?
答案 0 :(得分:3)
您需要了解ASP.NET page lifecycle。
为了让动态控件在回发时触发它们的事件,需要重新创建它们并再次附加到事件处理程序。
创建(和重新创建)动态控件的最佳位置是OnInit
事件处理程序。
答案 1 :(得分:0)
@Oded - 您对添加动态控件的正确时机绝对正确。但是,没有写出他试图添加按钮的事件。