CommandArgument nel Gridview

Ho una gridview come questo.

<asp:GridView ID="grdMerchant" runat="server" GridLines="None"
   HeaderStyle-Font-Bold="True" AutoGenerateColumns="False" AllowSorting="True" ShowHeader="false" OnRowDataBound="grdMerchant_RowDataBound" OnRowCommand="grdMerchant_RowCommand" DataKeyNames="OrderID" style="table-layout:auto;width:100%;" >  


<asp:TemplateField >
<ItemTemplate>
   <asp:Linkbutton ID= "btnView" runat="server" Text="View" OnClick="btnView_OnClick" CommandArgument='<%#Eval("OrderID")%>' ></asp:Linkbutton>

Come posso ottenere il OrderID della riga selezionata. Ho provato ad utilizzare

int OrderID = (int)grdMerchant.DataKeys[row.RowIndex][2];

Ma diventa nullo e so che questo non è il modo. Help me.

Ringrazio in anticipo!

InformationsquelleAutor Ram | 2011-12-13



One Reply
  1. 23

    provare come questo

     <asp:GridView ID="grd1" runat="Server" width="500px" AutoGenerateColumns="false" DataKeyNames="StateID" OnRowEditing="grd1_RowEditing">
      <Columns>
           <asp:TemplateField>
                  <ItemTemplate>
                          <asp:LinkButton ID="btnDelete" runat="server" CommandArgument='<%#Eval("StateID")%>' OnCommand="lnkDelete" Text="Delete">
                          </asp:LinkButton>
                   </ItemTemplate>
            </asp:TemplateField>
       </Columns>

     protected void lnkDelete(Object sender, CommandEventArgs e)
     {
        int iStID=int32.Parse(e.CommandArgument.ToString());
     }
    
     //iStID has the DataKey value which you can use. 

Lascia un commento