动态(以编程方式)添加复选框和已更改事件 [英] Dynamically (programatically) adding check boxes and checkedchanged events
本文介绍了动态(以编程方式)添加复选框和已更改事件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一些问题,通过编程方式添加了一些复选框和事件处理程序。复选框一切正常,但点击时不执行任何操作。有没有人知道我在做错什么?
I am having a bit of a problem adding a few check boxes and an event handler programatically. The check boxes all appear fine, but they don't do anything when clicked. Does anyone have any idea what I am doing wrong?
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;
}
推荐答案
您应该执行以下操作:
You should do the following:
- 为
CheckBox的每个实例设置
您在ID
foreach
循环中创建。 - 对于PostBack,请确保您的复选框已创建,
CheckedChanged
事件处理程序附加在页面生命周期的某个时候,控制事件发生之前
- Set the
ID
property for each instance ofCheckBox
you create in yourforeach
loop. - For PostBacks, ensure that your CheckBoxes are created and
CheckedChanged
event handler is attached at some point of the page life-cycle before control events are raised
这篇关于动态(以编程方式)添加复选框和已更改事件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文