verschachteltes Gridview liefert übergeordnete Zeile

Ich verwende verschachtelte GridViews, in denen jede Zeile in derRasteransicht hat Kind gridView. ich benutzeRowDataBound Veranstaltung vonÜbergeordnetes GridViewzum BindenUntergeordnetes GridView. Mein Problem ist, wie man den Schlüssel des übergeordneten GridView auf untergeordneten gridViews erhältRowDataBound Veranstaltung.

Unten ist ein Beispielcode:

<asp:GridView ID="gvParent" DataKeyNames="ID" runat="server" PageSize="1" AllowPaging="true" PagerSettings-Mode="NextPrevious" AutoGenerateColumns="False" SkinID="GVCenter" onrowdatabound="gvParent_RowDataBound">
   <Columns>
        <asp:BoundField DataField="Name" />
        <asp:TemplateField>
           <ItemTemplate>
               <asp:GridView ID="gvChild"  DataKeyNames="ID" runat="server" AutoGenerateColumns="false" ShowHeader="false" OnRowDataBound="gvChild_RowDataBound">
                  <Columns>
                     <asp:BoundField DataField="Name" />                     
                  </Columns>
                </asp:GridView>
           </ItemTemplate>
        </asp:TemplateField>
   </Columns>
</asp:GridView>

Hier ist der Code dahinter:

    protected void gvParent_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
            GridView gvChild= (GridView)e.Row.FindControl("gvChild");
            gvChild.DataSource = getChildObj();
            gvChild.DataBind();
        }
    }

   protected void gvChild_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
            // Here I need to get the parent gridview Row Key
        }
    }

Hoffe der obige Code erklärt das ganze Szenario.

Vielen Dank im Voraus, Sandy

Antworten auf die Frage(5)

Ihre Antwort auf die Frage