【问题标题】:RowEditing is fired when update button is clicked in GridView在 GridView 中单击更新按钮时会触发 RowEditing
【发布时间】:2014-04-10 07:12:35
【问题描述】:

我创建了一个GridView,如下所示:

protected void Page_Load(object sender, EventArgs e)
{
    GridView gv = new GridView();
    gv.ID = pId.ToString();
    gv.AutoGenerateEditButton = true;
    gv.DataKeyNames = ids;
    gv.RowEditing += gv_RowEditing;
    gv.RowUpdating += gv_RowUpdating;
    bindGv(pId, gv);
}

我还写了以下方法:-

RowUpdating:

void gv_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
    GridView gv = sender as GridView;
    GridViewRow row = (GridViewRow)gv.Rows[e.RowIndex];
    ProductCategory pc = context.ProductCategories.First(s => s.Name ==gv.ID );
    TextBox txtName = row.FindControl("txtName") as TextBox;
    pc.Name = txtName.Text;
}

RowEditing:

void gv_RowEditing(object sender, GridViewEditEventArgs e)
{
    GridView gv = sender as GridView;
    gv.EditIndex = e.NewEditIndex;
    bindGv(Convert.ToInt32(gv.ID), gv);
}

但是当我在调试模式下运行代码时,单击更新按钮会调用gv_RowEditing 方法而不是gv_RowUpdating。有什么问题?

【问题讨论】:

    标签: c# asp.net gridview webforms


    【解决方案1】:

    当您单击编辑按钮以更新任何记录时触发 gridview 事件的顺序,它调用 rowediting 事件,然后当您单击更新按钮时,它调用 rowupdating 事件。 rowediting 事件总是先调用,然后再调用 rowupdating。

    【讨论】:

      猜你喜欢
      • 2018-09-23
      • 2014-06-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多