This is a migrated thread and some comments may be shown as answers.

How passing DataKeyNames value of a parent table on a button of the child table

1 Answer 148 Views
General Discussions
This is a migrated thread and some comments may be shown as answers.
Newkid
Top achievements
Rank 1
Newkid asked on 16 Mar 2012, 07:14 PM
Hi,

Please let me know how to passPROJECT_ID value to my btnAddNew.  so when i click on my button, i will direct me to the new page with value of Project_ID.

Thanks so much in advance.

<
telerik:RadGrid ID="gvFSRMSearchResult" runat="server" 
    ShowStatusBar="true" 
    AutoGenerateColumns="False" 
    PageSize="5" 
    OnSortCommand="GVSortCommand" 
    OnPageIndexChanged="GVProject1PageIndexChanged" 
    OnPageSizeChanged="GVProjectPageSizeChanged"
    AllowSorting="True" 
    AllowMultiRowSelection="False"
    AllowPaging="True" 
    GridLines="Both"
    AllowMultiRowEdit="false"  
    Skin="Sunset"
    Width="100%" 
    AllowAutomaticInserts="True"
    OnDetailTableDataBind="gvFSRMSearchResult_DetailTableDataBind"
    AllowAutomaticDeletes="True" 
    AllowAutomaticUpdates="True"    
    >
  
    <PagerStyle Mode="NumericPages"></PagerStyle>
  
    <%--project_id is querystring passing to the child table--%>
    <MasterTableView DataKeyNames="PROJECT_ID" AutoGenerateColumns="false">
          
        <DetailTables>
            <telerik:GridTableView DataKeyNames="project_id" Name="PCRHistory" Width="100%" CommandItemDisplay="Bottom" >
  
                <Columns>
                    <telerik:GridHyperLinkColumn ItemStyle-ForeColor="Blue" HeaderText="Request Status" 
                        DataNavigateUrlFields="project_id"
                        DataNavigateUrlFormatString="ProjectCancel.aspx?ProjectNumber={0}" 
                        DataTextField="Status_Code">
                    </telerik:GridHyperLinkColumn>
                    <telerik:GridBoundColumn SortExpression="Reason" HeaderText="Reason"
                        HeaderButtonType="TextButton"
                        DataField="Reason_Description">
                    </telerik:GridBoundColumn>
                    <telerik:GridBoundColumn SortExpression="REASON_OTHER_EXPLAIN" HeaderText="Other Reason"
                        HeaderButtonType="TextButton"
                        DataField="REASON_OTHER_EXPLAIN">
                    </telerik:GridBoundColumn>
                    <telerik:GridBoundColumn SortExpression="Project_id" Visible="true"
                        HeaderButtonType="TextButton"
                        DataField="Project_id">
                    </telerik:GridBoundColumn>
                </Columns>
                <CommandItemTemplate>
                    <div style="padding: 5px 5px;">
                        <asp:ImageButton ID="btnAddNew" runat="server" OnClick="btnAddNew_Click" ImageUrl="~/Images/buttons/newrecord_icon.png" />
                    </div>
                </CommandItemTemplate>
            </telerik:GridTableView>
         </DetailTables>
  
        <Columns>
            <telerik:GridBoundColumn SortExpression="PROJECT_ID" HeaderText="PROJECT ID" HeaderButtonType="TextButton"
                DataField="PROJECT_ID">
            </telerik:GridBoundColumn>
  
            <telerik:GridBoundColumn DataField="PRJ_STATUS" Display="false" HeaderText="PRJ_STATUS">
            </telerik:GridBoundColumn>
            <telerik:GridBoundColumn DataField="TITLE" SortExpression="title" HeaderText="TITLE">
            </telerik:GridBoundColumn>
        </Columns>
  
    </MasterTableView>
     
</telerik:RadGrid>
protected void btnAddNew_Click(object sender, EventArgs e)
       {
             Response.Redirect("PCRNew.aspx?projectId=project_id";
       }

1 Answer, 1 is accepted

Sort by
0
Jayesh Goyani
Top achievements
Rank 2
answered on 18 Mar 2012, 08:05 PM
Hello Newkid,

protected void btnAddNew_Click(object sender, EventArgs e)
       {
           string PROJECT_ID = ((sender as Button).NamingContainer as GridCommandItem).OwnerTableView.ParentItem.GetDataKeyValue("PROJECT_ID").ToString();
           Response.Redirect("PCRNew.aspx?projectId=" + PROJECT_ID);
       }

let me know if any concern.

Thanks,
Jayesh Goyani
Tags
General Discussions
Asked by
Newkid
Top achievements
Rank 1
Answers by
Jayesh Goyani
Top achievements
Rank 2
Share this question
or