要想只設置GridView中的某一列可編輯,可以通過以下步驟實現:
在GridView的綁定數據之前,將所有列都設置為不可編輯狀態。
在GridView的RowDataBound事件中,判斷當前行的類型是否為數據行(DataRow),然后找到要編輯的列并將其設為可編輯狀態。
在GridView的RowUpdating事件中,獲取用戶編輯后的值并更新到數據源中。
以下是示例代碼:
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
// 設置第2列為可編輯狀態(索引從0開始)
e.Row.Cells[1].Enabled = true;
}
}
protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
// 獲取要更新的行
GridViewRow row = GridView1.Rows[e.RowIndex];
// 獲取用戶編輯后的值
string newValue = ((TextBox)row.Cells[1].Controls[0]).Text;
// 更新到數據源中
// ...
}
在上述示例中,通過GridView的RowDataBound事件找到要編輯的列(第2列),然后將其設為可編輯狀態。在GridView的RowUpdating事件中,獲取用戶編輯后的值并進行相應的處理。