检索单击它的行的主键(编辑和删除按钮)

本文关键字:编辑 删除 按钮 单击 检索 | 更新日期: 2023-09-27 18:17:25

>我有一个网格视图,显示来自SqlDatasource的信息。现在,网格视图显示一些信息,行末尾有一个编辑按钮和一个删除按钮。

我想在 C# 中从表中检索该行的主键,当我单击编辑或删除按钮时。

为此,我覆盖了两个函数:

protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
   Response.Write(e.NewEditIndex);
}
protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
   Response.Write(SqlDataSource1.DeleteCommand);
}

但是我无法检索主键值。我该怎么做?

检索单击它的行的主键(编辑和删除按钮)

GridView 使用DataKeyNames属性,该属性是键字段的集合。您可以使用GridView1.DataKeys属性来检索KeyField值。

Response.Write(GridView1.DataKeys[e.NewEditIndex].Value);

您可以像这样访问绑定的数据对象:

dataGridView1.Rows[e.NewEditIndex].DataBoundItem

然后,必须将其强制转换为数据类型,并且可以访问所有属性。

e.NewEditIndex

为您提供正在编辑的行的索引,而不是键。要检索键,请从索引行的控件中获取值

Dim gvRow As GridViewRow = lb.BindingContainer ‘Getting current row to get index
 Dim strKey As String = GridView1.DataKeys[gvRow.RowIndex][0].ToString()