Программное выделение записей в ListBox - C#

Узнай цену своей работы

Формулировка задачи:

Имеется форма для ввода и редактирования документов. Поле textBox1 заполняется через запятую выделенными записями из listBox1. Панель, с этим ListBox делается видимой после textBox1_GotFocus. Причем если поле textBox1 заполнено, то соответствующие записи в listBox1 должны стать выделенными. (выделяется только первая запись из textBox1).
        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);
            
        }
После события выбора панель снова делается невидимой и записи listBox1 становятся не выделенными.
//кнопка "Выбрать"
        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();
        }
GotFocus циклит, может требуется какое-то статичное событие? Подскажите что можно использовать?

Решение задачи: «Программное выделение записей в ListBox»

textual
Листинг программы
if (listBox1.Items[i].ToString().Trim() == arr.Trim())

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

7   голосов , оценка 3.857 из 5