girdview

gridview编辑指定列的方法是什么

小亿
163
2023-09-11 14:44:40
栏目: 编程语言

GridView编辑指定列的方法有多种,可以通过以下几种方式实现:

  1. 使用TemplateField模板列:在GridView中添加TemplateField列,然后在ItemTemplate中添加编辑控件,例如TextBox、DropDownList等。可以通过在GridView的RowEditing事件中获取编辑控件的值,并进行相应的数据操作。

示例代码如下:

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" OnRowEditing="GridView1_RowEditing">
<Columns>
<asp:TemplateField HeaderText="ID">
<ItemTemplate>
<asp:Label ID="lblID" runat="server" Text='<%# Eval("ID") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Name">
<ItemTemplate>
<asp:Label ID="lblName" runat="server" Text='<%# Eval("Name") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<asp:TextBox ID="txtName" runat="server" Text='<%# Eval("Name") %>'></asp:TextBox>
</EditItemTemplate>
</asp:TemplateField>
<asp:CommandField ShowEditButton="True" />
</Columns>
</asp:GridView>
protected void GridView1_RowEditing(object sender, GridViewEditEventArgs e)
{
GridView1.EditIndex = e.NewEditIndex;
// 获取指定列的编辑控件的值
TextBox txtName = (TextBox)GridView1.Rows[e.NewEditIndex].FindControl("txtName");
string newName = txtName.Text;
// 进行数据操作
// ...
}
  1. 使用BoundField绑定列:在GridView中添加BoundField绑定列,并设置ReadOnly属性为False,然后在GridView的RowEditing事件中获取指定列的值进行处理。

示例代码如下:

<asp:GridView ID="GridView2" runat="server" AutoGenerateColumns="False" OnRowEditing="GridView2_RowEditing">
<Columns>
<asp:BoundField DataField="ID" HeaderText="ID" ReadOnly="True" />
<asp:BoundField DataField="Name" HeaderText="Name" ReadOnly="False" />
<asp:CommandField ShowEditButton="True" />
</Columns>
</asp:GridView>
protected void GridView2_RowEditing(object sender, GridViewEditEventArgs e)
{
GridView2.EditIndex = e.NewEditIndex;
// 获取指定列的值
string name = GridView2.Rows[e.NewEditIndex].Cells[1].Text;
// 进行数据操作
// ...
}

以上是两种常见的方法,根据实际情况选择适合的方式进行编辑指定列的处理。

0
看了该问题的人还看了