如何循环全部的控件

来源:百度知道 编辑:UC知道 时间:2024/05/27 20:06:24
我有10个checkbox 但是ID不一样 我想循环遍历一次这10个chb 怎么做 比如 我要判断这10个checkbox的text是否为1 是则选中不是跳过
哦 no 你们的方法我没有一个尝试成功的
补充2点 一 我用的事asp.net
2 无法将类型为“System.Web.UI.LiteralControl”的对象强制转换为类型“System.Web.UI.WebControls.CheckBox”。

呵呵,试试这个,我试了下,没问题。
foreach括号里边的form1是默认的,如果你手动该了的话,记得这里也改一下。
foreach (Control c in form1.Controls)
{
if (c is CheckBox)
{
CheckBox cb = c as CheckBox;
if (cb.Text.Equals("1"))
{
cb.Checked = true;
}
}
}

foreach (Control c in this.Controls)
{
if (c is CheckBox)
{
//。。
}
}
但是,如果有别的容器控件,而这些checkbox又在容器控件里,那就循环不到了。不过可以递归循环到。
我建议是把所有的checkbox放一个arraylist或者list<checkbox>中。

foreach (CheckBox c in this.Controls)
{
if (c.GetType() == typeof(CheckBox) && c.Text.Equals("1"))
{
c.Checked = true;
}
}

o ye ~
你得把那10个checkbox 放到一个 group控件
才能循环啊

您可以使用checkboxList控件循环遍历.
或者可以使用P