我在以编程方式添加几个复选框和事件处理程序时遇到了一些问题。复选框都显示正常,但单击时它们不执行任何操作。有谁知道我做错了什么?
我的代码:
foreach (Statement i in theseStatements)
{
box = new CheckBox();
box.Text = i.StatementText;
box.AutoPostBack = true;
box.CheckedChanged += new EventHandler(this.CheckedChange);
PlaceHolder.Controls.Add(box);
}
protected void CheckedChange(object sender, EventArgs e)
{
CheckBox x = (CheckBox)sender;
Instructions.Text = "change";
WorkPlaceHazardsBox.Text += x.Text;
}
最佳答案
您应该执行以下操作:
- 为您在
foreach
循环中创建的每个CheckBox
实例设置ID
属性。 - 对于 PostBacks,确保在引发控制事件之前在页面生命周期的某个时间点创建您的 CheckBoxes 并附加
CheckedChanged
事件处理程序
关于c# - 动态(以编程方式)添加复选框和 checkedchanged 事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/626889/