GridView 隐藏列 之 DataKeyNames,DataKey
当我们使用DataTable的时候 往往只能设置或获取一个主键值,当我们进行数据绑定的时候往往需要设置多表的主键值 但是又不能在页面上显式显示,我们采用隐藏列的方式。当我们进行‘行’选择操作的时候,我们需要从每一行获取这行所包含的主键值,以下是解决办法:
首先设置键值名称:
GridView1.DataKeyNames = new string[] { "Prev_id", "Next_id" };
注意:必须是string类型,后面的Prev_id,Next_id是关联表的主键
在我们进行编辑的时候我们就可以分别得到所需要的值
protected void GridView1_RowEditing(object sender, GridViewDeleteEventArgs e)
{
dt.Prev_id = Int32.Parse(GridView1.DataKeys[e.RowIndex]["Prev_id"].ToString());
dt.Next_id = Int32.Parse(GridView1.DataKeys[e.RowIndex]["Next_id"].ToString());
……
}