我创建了一堆复选框动态:ASP.NET:如何访问动态创建的控制
CheckBox chkRead = new CheckBox();
chkRead.ID = "chk1";
chkRead.AutoPostBack = true;
chkRead.CheckedChanged += new EventHandler(CheckBox_CheckedChanged);
CheckBox chkPost = new CheckBox();
chkRead.ID = "chk2";
chkPost.AutoPostBack = true;
chkPost.CheckedChanged += new EventHandler(CheckBox_CheckedChanged);
protected void CheckBox_CheckedChanged(object sender, EventArgs e)
{
CheckBox chk = (CheckBox)sender;
}
我想要做的是以下几点: 当我检查chkPost我的CheckBox希望chkRead复选框进行检查以及
在CheckBox_CheckedChanged事件我只能访问到被点击 的复选框,但我不知道该怎么检查该事件中的其他复选框。
你试过'control.FindControl(“chk1”);'?如果您在回发中重新创建动态复选框,您应该可以访问它... –
@Robert Koritnik是的,我试过,但它返回null。我应该提到复选框位于Div控件中,而该控件又位于另一个ul/li元素中。 –
ASP.NET FindControl不是递归的。您需要深入研究这一点,或者在chkRead添加到的容器上调用FindControl。 – Igor