Поиск значения в DataGridView в столбцеC#

Место общения программистов C#
Anonymous
Поиск значения в DataGridView в столбце

Сообщение Anonymous »

Я хочу, чтобы пользователь мог искать число в столбце DataGridView (dgv). DGV может удерживать множество рекордов. Каждая запись имеет номер проекта. Поэтому я хочу, чтобы пользователь мог искать номер проекта в столбце «Номер проекта». У меня есть следующие столбцы: ProjectID (не видно); Изображение (без текста заголовка); Номер проекта; Название проекта; Компания; Контакт.

Вот мой код:

Код: Выделить всё

private void btnSearch_Click(object sender, EventArgs e)
{
string searchValue = textBox1.Text;
int rowIndex = -1;

dgvProjects.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
try
{
foreach (DataGridViewRow row in dgvProjects.Rows)
{
if (row.Cells[row.Index].Value.ToString().Equals(searchValue))
{
rowIndex = row.Index;
dgvProjects.Rows[row.Index].Selected = true;
break;
}
}
}
catch (Exception exc)
{
MessageBox.Show(exc.Message);
}
}
Проблема №1: Что он делает на данный момент: пользователь вводит номер проекта в TextBox1. Когда он/она нажимает кнопку, код ищет эту строку в строках, и когда найден номер проекта, эта строка выбирается. Это работает нормально, но только один раз. Когда я хочу найти другой номер проекта, ничего не происходит.

Проблема № 2: Я думаю, что это можно сделать лучше, выполнив поиск только по значениям столбца «Имя проекта». Но как мне это сделать правильно?

Код, который я использовал для поиска, взят из этого ответа

Подробнее здесь: https://stackoverflow.com/questions/131 ... n-a-column

Вернуться в «C#»