C# 设置多个复选框

C# 设置多个复选框,c#,checkbox,C#,Checkbox,我需要简单的逻辑迭代,但很多项目。。。 这是我的密码 byte[] nc1 = new byte[40]; nc1 = ChekSt(36, "192.168.2.55", 38, 40); //I need to iterate 40 times so my 40 checkbox can be updated switch (nc1[0]) { case 1: checkBox1.Ch

我需要简单的逻辑迭代,但很多项目。。。 这是我的密码

        byte[] nc1 = new byte[40];
        nc1 = ChekSt(36, "192.168.2.55", 38, 40);

        //I need to iterate 40 times so my 40 checkbox can be updated

        switch (nc1[0])
        {
            case 1: checkBox1.Checked = false; break;
            case 2: checkBox1.Checked = true; checkBox1.CheckState = CheckState.Indeterminate; break;
            case 3: checkBox1.Checked = true; checkBox1.CheckState = CheckState.Checked; break;
        }
我有支票箱1,支票箱2,支票箱3。。。到检查框40

我需要像checkBox(i)这样的东西

所以我不必写40次代码


有人知道吗?

将复选框放在数组或列表中,以便您可以以基于集合的方式操作它们

比如说

var list = new List<CheckBox>();
list.Add(checkBox1);
list.Add(checkBox2);
list.Add(checkBox3);

list[2].Checked = true;
var list=newlist();
列表。添加(复选框1);
列表。添加(复选框2);
列表。添加(复选框3);
列表[2]。选中=true;
尝试使用此代码

foreach (CheckBox checkbox in yourPanelContainer.Controls.OfType<CheckBox>())
{
   checkbox.Checked = true;
}
foreach(您的panelcontainer.Controls.OfType()中的复选框)
{
checkbox.Checked=true;
}

Wow,是什么用户操作导致您更新了其中的40个?应该是.Controls而不是.Children