【发布时间】:2012-03-04 20:58:27
【问题描述】:
我在gridview 中添加了一个名为reserve 的按钮,当我单击它时,我想对gridview 进行一些修改,但是它给出了索引超出范围的错误。下面是 rowCommand 方法:
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
int index = Convert.ToInt32(e.CommandArgument);
GridViewRow row = GridView1.Rows[index];
if (row.RowType == DataControlRowType.DataRow)
{
welcomeUser.InnerText = GridView1.DataKeys[index].Value.ToString();
}
}
以下是我的 gridview 列:
<Columns>
<asp:BoundField DataField="Id" HeaderText="Id" SortExpression="Id" />
<asp:BoundField DataField="BookName" HeaderText="BookName"
SortExpression="BookName" />
<asp:ButtonField ButtonType="Button" Text="Reserve" CommandName="Reverse" />
</Columns>
【问题讨论】:
-
你在你的gridview上设置DataKeyNames吗?
-
这解决了问题,请写一个答案,我会接受的,我需要datakeys来修改数据吗?
标签: c# asp.net gridview rowcommand datakey