Как выделить несколько строк в DataGridView?

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

В этой небольшой статье хочу показать на простом примере, как выделить несколько строк в элементе управления DataGridView.

И так, предположим, что у нас есть форма, которая содержит два элемента управления: DataGridView (dgvCustomers) и Button.

DataGridView

Элемент DataGridView используется для вывода данных таблицы Customers состоящей из двух колонок: id и name.

В качестве примера рассмотрим, как выделить несколько строк в DataGridView при нахождении одинаковых значений в столбце name.

Поиск значений и их выделение будет происходить в обработчике события button1_Click, поэтому для начала подпишемся на данное событие, после чего добавим следующий код:

private void button1_Click(object sender, EventArgs e)
{
dgvCustomers.ClearSelection();
foreach (DataGridViewRow row in dgvCustomers.Rows)
{
if (row.Cells[1].Value.Equals("Сергей"))
{
row.Selected = true;
}
}
}

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

Метод ClearSelection позволяет убрать выделение в первой ячейке DataGridView.

Свойство Selected, установленное в значение true, выделяет текущую строку.

Перед выполнением цикла необходимо обязательно проверить, чтобы свойство MultiSelect (элемента управления DataGridView) было установлено в значение true, так как именно оно отвечает за включение режима выделения нескольких строк.

dgvCustomers.MultiSelect = true;

Если необходимо просто выделить несколько найденных строк каким-либо цветом, то тогда замените, в выше приведенном примере, строку row.Selected = true на

row.DefaultCellStyle.BackColor = Color.Yellow;

цветные строки

Более подробно о том, как изменить цвет строки в DataGridView, можно прочитать, перейдя по ссылке.

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

Leave a Reply

Ваш e-mail не будет опубликован. Обязательные поля помечены *

*