C# 在C中使用变量引用web服务器控件#

C# 在C中使用变量引用web服务器控件#,c#,.net,asp.net,C#,.net,Asp.net,在C#中,我想为页面上的所有10个复选框分配一个值(例如1)。我可以使用变量的语法是什么?即复选框(I)。选择索引=1 for (int i = 1; i < 11; i++) { checklistbox1.selectedIndex = 1; checklistbox2.selectedIndex = 1; checklistbox3.selectedIndex = 1; ... checklistbox10.selectedIndex = 1; } for(in

在C#中,我想为页面上的所有10个复选框分配一个值(例如1)。我可以使用变量的语法是什么?即
复选框(I)。选择索引=1

for (int i = 1; i < 11; i++)
{
  checklistbox1.selectedIndex = 1;
  checklistbox2.selectedIndex = 1;
  checklistbox3.selectedIndex = 1;
  ...
  checklistbox10.selectedIndex = 1;
}
for(int i=1;i<11;i++)
{
checklistbox1.selectedIndex=1;
checklistbox2.selectedIndex=1;
checklistbox3.selectedIndex=1;
...
checklistbox10.selectedIndex=1;
}

您应该创建一个
列表

var cbs=新列表{thingy,otherThingy,…};
foreach(cbs中的var cb)
cb.SelectedIndex=0;

您应该创建一个
列表

var cbs=新列表{thingy,otherThingy,…};
foreach(cbs中的var cb)
cb.SelectedIndex=0;
我想您应该使用“FindControl”方法,以便按如下所示进行操作

 for (int i = 1; i <= 10; i++)
 {
      (Page.FindControl("checklistbox" + i) as CheckBox).SelectedIndex = 1;
 }
for(inti=1;i我想您应该使用“FindControl”方法来实现这一点,如下所示

 for (int i = 1; i <= 10; i++)
 {
      (Page.FindControl("checklistbox" + i) as CheckBox).SelectedIndex = 1;
 }

for(int i=1;i您可以循环页面上的所有控件,并按照说明选择所需的控件:


如果页面上有很多控件,这可能不是一个好主意。

您可以循环页面上的所有控件,并按如下所述选择所需的控件:


如果页面上有很多控件,这可能不是一个好主意。

您应该命名控件。您应该命名控件。这可能会导致gucky,因为我的页面上确实有很多控件。页面本质上是一个大的清单。这可能会导致gucky,因为我的页面上确实有很多控件。页面本质上是一个大型检查表。我尝试了此操作,但不幸的是,它无法识别SelecteIndex…“System.Web.UI.WebControl.CheckBox”不包含“SelectedIndex”的定义,并且没有扩展方法“SelectedIndex”接受类型为“System.Web.UI.WebControl.CheckBox”的第一个参数。如果使用复选框,则只能找到设置其“Checked”属性。如果您使用的是复选框列表,则可以设置“SelectedIndex”,但只能设置列表中的项目,而不能设置所有项目。请查看您的要求。我使用了许多复选框,每个复选框都有3个“Checked”。用户一次只能选择1个值,因为我有javascript(互斥函数)正在他们的浏览器上运行。感谢您的帮助!我尝试了此操作,但不幸的是,它无法识别SelecteIndex…'System.Web.UI.WebControl.CheckBox'不包含“SelectedIndex”的定义,并且没有扩展方法“SelectedIndex”接受类型为“System.Web.UI.WebControls.CheckBox”的第一个参数e使用复选框,您只能设置它的“Checked”属性。如果您使用复选框列表,您可以设置“SelectedIndex”,但只能设置列表中的项目,而不是所有项目。请查看您的要求。我使用了许多复选框,每个复选框都有3个“checks”。用户一次只能选择1个值,因为我有javascript(互斥功能)在他们的浏览器上运行。感谢您的帮助!
foreach (Control masterControl in Page.Controls)
{
    if (masterControl is MasterPage)
    {
        foreach (Control formControl in masterControl.Controls)
        {
            if (formControl is System.Web.UI.HtmlControls.HtmlForm)
            {
                foreach (Control contentControl in formControl.Controls)
                {
                    if (contentControl is ContentPlaceHolder)
                    {
                        foreach (Control childControl in contentControl.Controls)
                        {
                            if(childControl is CheckBoxList)
                            {
                                ((CheckBoxList)childControl).SelectedIndex = 1;
                            }
                        }
                    }
                }
            }
        }
    }
}