簡體   English   中英

在GridView中編輯功能僅在第一行中起作用

[英]Edit Functionality in GridView Works Only in the First Row

我的插入和刪除功能工作正常,但是我在編輯功能上遇到問題。 編輯功能僅在行的第一行起作用,但是如果我嘗試編輯第二行或第三行,則會出現此錯誤:“必須聲明標量變量“ @Post_ID”。這是我的代碼:

GridViewRow row = (GridViewRow)GridView1.Rows[e.RowIndex];
        int id = Int32.Parse(GridView1.DataKeys[e.RowIndex].Value.ToString());
        TextBox date = (TextBox)row.FindControl("date");

        SqlCommand cmd = new SqlCommand();
        cmd.CommandText =    "update t_your_table " +
                             "set " +                                 
                             "date = @date, " +             
                             " time = @time  where id = @ID "                             


    cmd.Parameters.Add("@id", SqlDbType.VarChar).Value = id;           
    cmd.Parameters.Add("@date", SqlDbType.VarChar).Value = date.Text;      

您正在使用以下代碼對行進行硬編碼:

TextBox myTextBox11 = GV_InlineEditing.Rows[0].FindControl("GV_Post_ID") as TextBox;

.Rows[0]將始終查找第一行,而不管其狀態如何。 您可能想使用EditIndex屬性查看正在編輯的行。

暫無
暫無

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

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