如何从gridView中的特定字段获取参数,用于同一行的模板字段

本文关键字:字段 一行 用于 参数 gridView 获取 | 更新日期: 2023-09-27 18:05:41

我使用GridView来显示数据库中的数据,GridView被绑定到objectDataSource。gridview中的每一行都代表一个属于用户的项目,我想在gridview中添加另一个字段,以显示用户的详细信息(实际上是在数据库的另一个表中)。

我不知道什么是最好的方法,我试图添加到gridView一个TemplateField包含一个DetailView,并将其绑定到另一个objectdatasource,但我不知道如何从行-(userID字段)的特定字段中获取参数。

如何从gridView中的特定字段获取参数,用于同一行的模板字段

实际情况要复杂一些。您可以将userID设置为数据键,并在GridView的RowDataBound事件中绑定详细视图。

<asp:GridView ID="GridView1" runat="server" DataKeyNames="UserID" OnRowDataBound="GridView1_RowDataBound">

后面的代码:

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
    //get the data key
    int userID = (int)GridView1.DataKeys[e.Row.RowIndex]["UserID"];
    //get the nested details view control
    DetailsView dv = (DetailsView)e.Row.FindControl("DetailsView1");
    dv.DataSource = GetUserDetailsTable(userID); //your data source
    dv.DataBind();
}