Программное выделение записей в ListBox - C#
Формулировка задачи:
Имеется форма для ввода и редактирования документов.
Поле textBox1 заполняется через запятую выделенными записями из listBox1.
Панель, с этим ListBox делается видимой после textBox1_GotFocus. Причем если поле textBox1 заполнено, то соответствующие записи в listBox1 должны стать выделенными. (выделяется только первая запись из textBox1).
После события выбора панель снова делается невидимой и записи listBox1 становятся не выделенными.
GotFocus циклит, может требуется какое-то статичное событие?
Подскажите что можно использовать?
private void textBox1_GotFocus(object sender, System.EventArgs e) //получение фокуса { this.panel1.Visible = true; string[] arr2 = textBox1.Text.ToString().Split(','); foreach (string arr in arr2) for (int i = 0; i < listBox1.Items.Count; i++) if (listBox1.Items[i].ToString() == arr) listBox1.SetSelected(i, true); }
//кнопка "Выбрать" private void button3_Click(object sender, EventArgs e) { textBox1.Text = ""; for (int i = 0; i < this.listBox1.SelectedItems.Count; i++) { if (i != this.listBox1.SelectedItems.Count - 1) this.textBox1.Text += this.listBox1.SelectedItems[i].ToString() + ", "; else this.textBox1.Text += this.listBox1.SelectedItems[i].ToString(); } for (int j = 0; j < this.listBox1.Items.Count; j++) { listBox1.SetSelected(j, false); } this.panel1.Visible = false; this.textBox5.Select(); }
Решение задачи: «Программное выделение записей в ListBox»
textual
Листинг программы
if (listBox1.Items[i].ToString().Trim() == arr.Trim())
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д