<asp:GridView ID="gvWorkshop" runat="server"
AllowCustomPaging="True" AllowPaging="True"
BorderStyle="Solid" BorderWidth="1px"
AllowSorting="True" AutoGenerateColumns="False"
DataKeyNames="ID, ctrycode" OnRowCommand="gvWorkshop_onRowCommand">
<Columns>
<asp:ButtonField CommandName="Select" Text="Select" />
<asp:BoundField DataField="paddress" HeaderText="Address" />
</Columns>
</asp:GridView>
背后的代码
protected void gvWorkshop_onRowCommand(object sender, GridViewCommandEventArgs e)
{
int index;
string ID;
GridViewRow row;
if(e.CommandName == "Edit")
{
index = Convert.ToInt32(e.CommandArgument);
row = gvWorkshop.Rows[index];
ID = gvWorkshop.DataKeys[grdrow.RowIndex]["workshopID"].ToString();
}
}
我的错误索引超出范围,因为gridview为空。任何人都有想法什么出错?为什么gridview变空了。请帮忙。
答案 0 :(得分:1)
这一行的问题
ID = gvWorkshop.DataKeys[grdrow.RowIndex]["workshopID"].ToString();
你提到“grdrow”代替“row”。请将其更改为
ID = gvWorkshop.DataKeys[row.RowIndex]["workshopID"].ToString();