更新网格视图的特定单元格不起作用,更新未发生,并且存在一些问题

本文关键字:更新 存在 问题 单元格 网格 不起作用 视图 | 更新日期: 2023-09-27 18:31:21

晚上好,有人让我帮她修复一些 asp.net 代码,她向我展示了她的代码,但我找不到修复它的方法。所以我想知道是否有人会花时间帮助我修复它。

正如她所说,她正在使用 asp.net(净f.4)。在一个页面上,她添加了一个网格视图,并使用sqldatasource将数据表中的信息绑定到网格视图。

  • 目标是 ,在 网格视图 row_updating 上 条件是否为真然后当前编辑行的某个单元格将更新为新价值。但是,这是问题所在:

  • 假设我在网格视图上有两行!

  • 如果我单击第一行的编辑按钮,然后按更新按钮,则没有任何反应。
  • 但是当我单击第二行的编辑按钮时,我可以看到第一行更新的单元格的更新值和如果我单击更新或取消我无法再看到该值。
  • 在数据表中,该值不会更新。

有人可以帮我修复它吗?

谢谢

更新网格视图的特定单元格不起作用,更新未发生,并且存在一些问题

这是因为您在执行 Update 语句后没有更新网格视图。您需要在网格视图上更新后调用 DataBind()

GridView1.DataSource = yourDataSource;
GridView1.DataBind();
您需要

ID分配给 DataKeyNames 属性,然后您可以像这样获取值:

<asp:GridView ID="GridView1" runat="server" DataKeyNames="ID" ...>

在代码隐藏中,您可以像这样获取 ID:

var ID = (int)GridView1.DataKeys[e.RowIndex]["ID"];