ПОНЯТНО О Visual Basic NET (том 3)




Свойства, события и методы списков - часть 2


End Sub

Если ни один элемент в списке не выделен, значение SelectedIndex равно  -1.

Если вы хотите очистить список, напишите:

        ComboBox2.Items.Clear()

Если вы хотите, чтобы элементы списка были отсортированы по алфавиту, то установите в True свойство Sorted. Не забывайте, что сортировка – текстовая, а не числовая, поэтому если ваш список состоит из числовых строк, то 28 будет стоять выше, чем 5.

Среди разнообразных событий списка упомяну событие SelectedIndexChanged, которое происходит в момент выбора очередного элемента списка.

Удобная работа со списком. В большинстве реальных проектов вам нужно не просто что-то выбрать из списка, но и иметь возможности для удобного изменения списка: добавления, удаления, изменения и перестановки его элементов.

Создадим проект. Разместим на форме простой или раскрывающийся ComboBox и 4 кнопки для разнообразной работы с его списком. Вот функции кнопок:

  • Кнопка «Удаление» удаляет выбранный элемент из списка
  • Кнопка «Добавить» добавляет содержимое текстового поля списка в список (удобно для быстрого внесения дополнений в список)
  • Кнопка «Переставить в конец» переставляет выбранный элемент в конец списка (удобно для произвольной пересортировки  списка)
  • Кнопка «Исправить» заменяет выбранный элемент содержимым текстового поля списка (удобно для исправлений в написании элемента)
  • Попробуйте написать код самостоятельно. Это не очень легко. Если не получится, то вот он:

    Dim Номер As Integer     'Номер выбранного элемента в списке

    Private Sub Удаление(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Удаление.Click

            ComboBox1.Items.Remove(ComboBox1.SelectedItem)

    End Sub

    Private Sub Добавить(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Добавить.Click

            If ComboBox1.Text <> "" Then ComboBox1.Items.Add(ComboBox1.Text)     'Если в поле не пусто, то ...

    End Sub

    Private Sub Переставить(ByVal sender As System.Object, ByVal e As System.EventArgs)  _




    Содержание  Назад  Вперед