gridview中的编辑与RowDataBound中如何取得当前关键字的值?急啊!~~大侠们帮个忙
想根据GridView中的关键字(id)在编辑中的DropDownList中查找在另一个表中的相关值,向各位大侠请教!
我现在只能把这个id值显示出来在GridView中,然后在后台用
e.Row.Cells[0].Text这种方式取出来再查询,但我现在不想显示id,但好像隐藏列后不能取得相关值,有做个的指点一下呢,谢谢了
------解决方案--------------------设置datakey
<asp:gridview id= "CustomersGridView " datakeynames= "id "
void CustomersGridView_RowDataBound(Object sender, GridViewRowEventArgs e)
{
if(e.Row.RowType == DataControlRowType.DataRow)
{
// 取id
string id = CustomersGridView.DataKeys[e.Item.ItemIndex].Value.ToString()
}
}
------解决方案--------------------但好像隐藏列后不能取得相关值
ASP.NET DEMO 7: 解决无法获取 GridView 隐藏列值问题
http://www.cnblogs.com/Jinglecat/category/52622.html
------解决方案--------------------可以把关键字的值放在隐藏控件中
------解决方案--------------------if(e.Row.RowType == DataControlRowType.DataRow)
{
string id = GridView1.DataKeys[e.Item.ItemIndex].Value.ToString()
}
------解决方案--------------------string id = GridView1.DataKeys[e.Item.ItemIndex].Value.ToString()
------解决方案--------------------this.GridView1.DataKeyNames = new string[] { "mm_ID " };
GridView1.DataBind();
------解决方案--------------------先取得行,在去找DropDownList1
------解决方案--------------------DropDownList ddl=(DropDownList)GridView1.Row.cells[].FindControl( "DropDownList1 ");