在TextBox值c#后选择一个DataGridView行

本文关键字:一个 DataGridView TextBox 选择 | 更新日期: 2023-09-27 18:07:33

我有一个datagridview与1列与一些行。我想做:
当用户在TextBox中写入值时,如果该值已经存在于datagridview中,我想选择包含该textput值

的行

怎么做呢?
我将像这样使用:

dataGridView1.CurrentCell = dataGridView1[0, index];

但是我不知道如何使用TextBox值找到索引。

在TextBox值c#后选择一个DataGridView行

您可以循环遍历行,直到找到与文本框的值匹配的行:

foreach (DataGridViewRow row in dataGridView1.Rows)
{
    // Test if the first column of the current row equals
    // the value in the text box
    if ((string)row.Cells[0].Value == textBox1.Text)
    {
        // we have a match
        row.Selected = true;
    }
    else
    {
        row.Selected = false;
    }
}

试试这样做:

 private void button1_Click(object sender, EventArgs e)
    {
        for (int i = 0; i < dataGridView1.Rows.Count; i++)
        {
            if (!dataGridView1.Rows[i].IsNewRow)
            {
                if (dataGridView1[0, i].Value.ToString() == textBox1.Text)
                    dataGridView1.Rows[i].Selected = true;
                else
                    dataGridView1.Rows[i].Selected = false;
            }
        }
    }