Как установить строку Datagirdview, выбранную по значению текстового поля C #? - PullRequest
0 голосов
/ 26 сентября 2018

У меня есть TextBox с именем txtvalue.
Затем у меня есть DataGridView со столбцом с именем Id.
Моя проблема заключается в том, как установить строку DataGridView, выбранную с помощьюзначение txtvalue равно столбцу ID.
Текст в текстовом поле не является числом , я просто хочу, чтобы он равнялся столбцу "ID" в DataGridView.
Я знаю этот способ установки этого, но это так долго, есть ли быстрый способ стать короче, не используя Linq?

Foreach (DataGridViewRow row in dataGridView1.Rows)
{
    if (row.Columns["Id"].Value.ToString().Equals(txtvalue.Text))
    {
        row.Selected = true;
        break;
    }
}

Хочу быстрый путь без использования цикла?Любая идея, пожалуйста?Значение столбца "ID" Datagridview:
----- ID -----
abc
xyz
klm
mnz
bla ... bla
Значит, значение не число.и значение текстового поля равно этому

1 Ответ

0 голосов
/ 26 сентября 2018

Существует индексатор в DataGridView.Rows

Поэтому вам просто нужно преобразовать вашу строку в int и получить доступ к индексу строки, чтобы установить выбранное:

dataGridView1.Rows(Int32.Parse(txtvalue.Text )).Selected = True

Будьте в курсечто нет проверки, и метод Int32.Parse может выдать исключение. Лучшее решение будет выглядеть примерно так:

int index;
bool parsed = Int32.TryParse(txtvalue.Text, out index);
if (parsed)
{
  dataGridView1.Rows(index).Selected = True
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...