繁体   English   中英

无法在ASP.NET中添加编程控件

[英]Can't add programmatic controls in ASP.NET

我在ASP.NET中有一个页面,并且正在向预先存在的静态TableCell的Controls数据成员中动态添加WebControls.Button的子类。 该按钮在浏览器中按预期显示良好。 但是,当我按一下按钮,我添加事件处理程序button.Click不会被调用。 关于为什么这有什么建议吗?

var controls = this.displaytable.Rows[i].Cells[j].Controls;
var button = new TableButton(j, i);
button.Click += new EventHandler(this.button_Click);
button.UseSubmitBehavior = false;
button.Text = "Available";
controls.Add(button);

必须在每个请求上创建动态添加的按钮,这很可能在引发回发事件(例如OnLoad)之前就足够了。 Button有时需要有一个明确的ID:

var controls = this.displaytable.Rows[i].Cells[j].Controls;
var button = new TableButton(j, i);
button.Click += new EventHandler(this.button_Click);
button.UseSubmitBehavior = false;
button.Text = "Available";
button.Id = string.Format("TableButton_{0}_{1}", j, i);
controls.Add(button);

这样的答案可能会有所帮助: ASP.NET动态命令按钮事件未触发

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM