C#从datagridview中检索单元格值

本文关键字:单元格 检索 datagridview | 更新日期: 2023-09-27 18:20:27

如何检索用户刚刚在数据网格视图的单元格中键入的信息?我需要获得用户输入的信息,对其进行处理,然后使用它在数据库中搜索记录。

string aux = dataGridView1[3,dataGridView1.CurrentCell.RowIndex].Value.ToString();
aux = aux.Substring(0, 7);
dataGridView1[2, dataGridView1.CurrentCell.RowIndex].Value = mb.pesquisar("select filcod from filme where filtag = " + aux);

此代码位于事件处理程序中,该事件处理程序在用户从数据网格视图中的单元格退出时激发。为什么我没有检索到正确的单元格值?如何获取用户键入的实际值?

C#从datagridview中检索单元格值

您可以在DataGridView.CellValueChanged事件中处理此问题。查看该链接的文档,您将看到该方法传递了一个事件对象e。

对象e是DataGridViewCellEventArgs对象。第二个链接处的文档显示DataGridViewCellEventArgs具有RowIndex和ColumnIndex属性。这就是确定哪个单元格触发了事件,以及从哪里获取单元格值的方法。

您希望使用e.RowIndex,因为它来自引发CellValueChanged事件的单元格。它发射正是因为焦点发生了变化。这就是为什么"当前"行与e.RowIndex.不同的原因

另请参见此处获取示例。