Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/310.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 特定标签中的复选框_C#_Forms_Checkbox_Label - Fatal编程技术网

C# 特定标签中的复选框

C# 特定标签中的复选框,c#,forms,checkbox,label,C#,Forms,Checkbox,Label,这很容易解释,但很复杂: 我有复选框,总共10个,但有一个限制,我们只能选中10个中的5个。 假设我们在两个方框中打勾,然后按validate。 我将得到一个如下所示的布尔数组: 真,假,真,假,假,真,假,假,假,假,假,假 知道每个框都有一个值: 第一个盒子=动物 第二个方框=大写 现在我来回答我的问题: 我有5个标签,我希望它是对应于复选框值的5个标签。 因此,如何使5个标签都是与复选框对应的不同值 这是我的密码: bool[] categorie = new bool[10] {

这很容易解释,但很复杂:

我有复选框,总共10个,但有一个限制,我们只能选中10个中的5个。 假设我们在两个方框中打勾,然后按validate。 我将得到一个如下所示的布尔数组:

真,假,真,假,假,真,假,假,假,假,假,假

知道每个框都有一个值: 第一个盒子=动物 第二个方框=大写

现在我来回答我的问题:

我有5个标签,我希望它是对应于复选框值的5个标签。 因此,如何使5个标签都是与复选框对应的不同值

这是我的密码:

    bool[] categorie = new bool[10] { 
        false, true, false ,true ,false ,
        true ,false ,true, false, true };

    string[] categorieName = new string[10] {
       "Animaux", "Capitale", "Fruit", "Légume", "Pays", 
       "Prénom fille", "Prénom garçon", "Métier", "Moyen de transport", "Sport" };
我已经完成了bool数组,但是根据复选框,它自己完成了

第二个是价值

因此,我希望我的标签是:

Capitale、Légume、pays、prénom garcon、moyen de transport


感谢您提供并请解释解决方案(循环?如果?我不知道)

让我们将
复选框组织成一个集合,例如数组:

 Tuple<CheckBox, Control>[] m_Categories = null;

 public MyForm() {
   // I've assumed WinForms - InitializeComponent()
   InitializeComponent();

   // CheckBox and its corresponding Label
   m_Categories = new Tuple<CheckBox, Control>[] {
     Tuple.Create(cbAnimaux, labelAnimaux),   
     Tuple.Create(cbCapitale, labelCapitale),     
     ...
     Tuple.Create(cbSport, labelSport), 
   };
 }

感谢您的回答,但还有一个问题:复选框是单独的形式,我通过类参数将它们取回(这就是为什么我有一个数组)
 foreach (var record in m_Categories)
   record.Item2.Text = record.Item1.Checked // If CheckBox is  
     ? record.Item1.Text // checked, label gets CheckBoxes Text
     : "";               // not checked, label has an empty Text