2017-02-03 4 views
-2

После нажатия кнопки курсор должен изменить положение к другому TextBoxПоказать текст CheckBox в текстовом поле после нажатия кнопки

private void btnOk_Click(object sender, EventArgs e) 
{ 
    if (checkBox1.Checked) 
     txtAffiche.Text = txtAffiche.Text + Environment.NewLine + checkBox1.Text; 
    else if (checkBox2.Checked) 
     txtAffiche.Text = txtAffiche.Text + Environment.NewLine + checkBox2.Text; 
    else if (checkBox3.Checked) 
     txtAffiche.Text = txtAffiche.Text + Environment.NewLine + checkBox3.Text; 
    else if (checkBox4.Checked) 
     txtAffiche.Text = txtAffiche.Text + Environment.NewLine + checkBox4.Text; 

} 
+0

Я не совсем понимаю, что должно произойти и что происходит вместо этого/что не работает? Можете ли вы объяснить немного больше, пожалуйста? –

+1

"affiche": нет такого английского слова – Richard

+0

Кстати: есть 'txtAffiche' multiline? в противном случае невозможно добавить многострочную строку. И это формы окон или wpf или некоторые другие рамки ui? добавьте соответствующий тег. –

ответ

0

Я предполагаю, что вы хотите добавить текст в txtAfficheTextBox в зависимости от установлен флажок (ы)? Если это так, операторы if/else несколько запутывают при использовании CheckBoxes. CheckBoxes используются для проверки/снятия отметки с отдельного элемента. Когда есть более 1 CheckBox (s), они НЕ работают в качестве группы, такой как радиокнопки, так что только переключатель ONE (1) может быть выбран, когда его больше 1. Таким образом, можно установить несколько CheckBox. время.

Оператор if/else/if/else в основном устанавливает только одно (1) checkbox.text имя, даже если все флажки отмечены. Этот оператор if/else/if/else просто отображает флажок FIRST. Это кажется странным, если проверено более одного . Я предполагаю, что вы можете отобразить все CheckBox es, которые в настоящее время отмечены. Я надеюсь, что код ниже может помочь.

private void button1_Click(object sender, EventArgs e) { 
    StringBuilder sb = new StringBuilder(); 
    if (checkBox1.Checked) 
    sb.Append(checkBox1.Text + " "); 
    if (checkBox2.Checked) 
    sb.Append(checkBox2.Text + " "); 
    if (checkBox3.Checked) 
    sb.Append(checkBox3.Text + " "); 
    if (checkBox4.Checked) 
    sb.Append(checkBox4.Text + " "); 
    txtAffiche.Text = txtAffiche.Text + Environment.NewLine + sb.ToString(); 
} 
+0

большое спасибо – taha