2013-12-12 2 views
1

Я пытаюсь проверить каждый флажок, отмеченный в моей панели1. Затем покажите элемент, отмеченный в метке1. Я не могу заставить его работать с панелью и флажками ... ниже - это то, что у меня есть для кода. Любые предложения были бы замечательными! БлагодаряC# Foreach checkbox проверяется на панели

foreach (int indexChecked in panel1) 
{ 
      str1 += panel1.Items[indexChecked].ToString() + ", "; 
      label1.Visible = true; 
} 
     label14.Text = str1; 
+0

То, что кажется проблема, какая ошибка вы получаете? что вы подразумеваете под «не может заставить его работать», компилирует ли он, какой результат вы получаете? – OopsUser

+1

Кроме того, назовите свои элементы управления! panel1, label1, label2, label3. Так трудно читать, как только приложения становятся больше, постоянно проверяя, какой именно. –

ответ

8

раствор 1:

String str1=""; 
    foreach (Control c in panel1.Controls) 
    { 
     if((c is CheckBox) && ((CheckBox) c).Checked)      
     str1 += c.Text+ ", "; 
    } 

    str1=str1.Trim(); 
    str1=str1.Substring(0,str1.Length-1); 
    label14.Text = str1; 

Решение 2: если вы хотите добавить каждый проверяемый CheckBox позиции в ListView

Попробуйте:

listView1.Items.Clear(); 
    foreach (Control c in panel1.Controls) 
    { 
     if((c is CheckBox) && ((CheckBox) c).Checked)      
      listView1.Items.Add(c.Text); 
    } 
+0

Это прекрасно! Последний вопрос, как я могу показать его в виде списка. Если проверено несколько чекбоксов, для них нужно запустить новую строку? –

+0

@hexc: вы хотите показать каждый текст в новой строке в списке? –

+0

Просто покажите каждый флажок в метке или списке, но для каждого установленного флажка он помещается в новую строку. –

0

вы можете сразу получить, если установлен флажок:

foreach (Control c in Controls.OfType<CheckBox>()) 
      { 
       if (((CheckBox)c).Checked == true) 
       { 
        return true; 
       } 
       else 
       { 
        return false; 
       } 
      } 
+0

Controls.OfType не существует в ASP.net – Fandango68

+0

Он доступен в Asp.Net, а мой примерный код основан на ASP.Net –

Смежные вопросы