グリッドビューのすべての行を編集可能にする方法

GridViewすべての行を編集可能にするには、次の手順を実行します。

  1. リンパ組織の構造及び機能を詳しく説明します
  2. true
<asp:GridView ID="GridView1" runat="server" AutoGenerateEditButton="true">
...
</asp:GridView>
  1. 行編集
  2. グリッドビューの編集インデックス
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
GridView1.EditIndex = e.NewEditIndex;
// 重新绑定数据源
BindGridView();
}
  1. 行更新
protected void GridView1_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
// 取消编辑模式
GridView1.EditIndex = -1;
// 获取更新后的数据并保存
TextBox txtName = GridView1.Rows[e.RowIndex].FindControl("txtName") as TextBox;
TextBox txtAge = GridView1.Rows[e.RowIndex].FindControl("txtAge") as TextBox;
// 更新数据
// SaveData(txtName.Text, txtAge.Text);
// 重新绑定数据源
BindGridView();
}
  1. 行編集キャンセル中
protected void GridView1_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
{
GridView1.EditIndex = -1;
// 重新绑定数据源
BindGridView();
}
  1. ItemTemplate
<asp:TemplateField HeaderText="Name">
<ItemTemplate>
<%# Eval("Name") %>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtName" runat="server" Text='<%# Eval("Name") %>'></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
  1. コード内で、GridViewのデータソースを再バインドします。
protected void BindGridView()
{
// 获取数据源
// List<MyData> data = GetData();
// 绑定数据源
// GridView1.DataSource = data;
// GridView1.DataBind();
}

上記は一般的な実装方法の一種であり、必要に応じて適宜に変更や調整を行うことができます。

bannerAds