Как программно выделить строку в listbox?

В этой небольшой статье хотелось бы показать на простом примере, как можно программно выделить строку в listBox. И так, сначала создадим Windows Forms приложение, а затем добавим на форму элемент управления listBox, который заполним несколькими любыми значениями.

каркас приложения

Чтобы программно выделить строку в listbox, нужно воспользоваться уже готовым методом SetSelected, в который в качестве первого параметра необходимо передать индекс выделяемого элемента, а в качестве второго параметра значение true, например:

результат

выделение строки по индексу элемента

Если Вы не знаете индекс элемента, но при этом знаете его значение, то тогда Вы можете выделить строку, например следующим способом.

Результат

выделение строки по значению элемента

Выделение нескольких строк в listbox

Если Вам нужно выделить несколько строк в listBox (multiselect), то тогда сначала установите свойство SelectionMode, используя одноименное перечисление, в одно из следующих значений: SelectionMode.MultiSimple или SelectionMode.MultiExtended. Разница между значениями заключается в том, что в первом случаи Вы можете выделить несколько строк только мышкой, а во втором используя клавиатуру, например, нажав сочетание клавиш: Shift + стрелка вверх или вниз.

результат

выделение нескольких строк

Выделение строки сразу в двух элементах listbox

И в конце рассмотрим ещё один простой пример, но сначала добавим на форму ещё один listBox и так же заполним его несколькими значениями.

два элемента управления listbox

Задача: при ручном выделении строки в listbox1 должна, автоматически выделится строка с таким же индексом в listBox2. Решение: сначала подписываемся на событие SelectedIndexChanged.

подписка на событие SelectedIndexChanged

А затем выделяем нужную строку в listbox2

С помощью свойства SelectedIndex получаем текущий индекс выделенного элемента в listbox1, который затем используем, чтобы выделить строку в listbox2.

выделение двух строк

Читайте также:

Похожие темы

Как узнать, чему равна сумма элементов массива?... Как получить сумму элементов массива в языке c# При решении различных задач, очень часто требуется узнать, чему равна сумма элементов массива или обо...
Как очистить listbox в c# Как очистить listbox? Небольшая заметка, в которой хочу показать, как очистить listBox. Задача встречается довольно часто и имеет очень простое решен...
Как разархивировать rar с помощью языка c#... Как разархивировать rar файл? Из этой небольшой заметки вы узнаете, как разархивировать rar файл с помощью языка c#. И так, предположим, что у нас...