簡體   English   中英

Gridview行命令數據鍵給出索引超出范圍錯誤

[英]Gridview Rowcommand Datakey gives index out of range error

我已經在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>

如果要使用DataKey [index]表達式,則需要設置DataKeyNames
在這里查看MSDN

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM