绑定到Datatable时进行GridView编辑

时间:2012-08-27 17:19:13

标签: c# asp.net gridview

我正在创建一个网站,我们的客户可以直接从我们这里订购零件。我有一个数据表设置,当用户点击一个按钮时,它会将一个快速的订单细节添加到gridview。在gridview中,我启用了编辑和删除按钮。删除功能工作正常,但是当您尝试编辑信息时,它不会使用新信息更改网格视图。这就是我到目前为止所拥有的:

protected void griditems_RowUpdating(object sender, GridViewUpdateEventArgs e)
{
  DataTable dt = (DataTable)Session["table"];
  foreach (DataRow dr in dt.Rows)
    {
        part = Convert.ToString(dr["Part"]);
        dr["Part"] = part;
        dr["Quantity"] = qty;
        dr["Ship-To"] = shipto;
    }

    griditems.EditIndex = -1;
    BindData();
}

尝试此操作时,会以原始输入值显示网格视图。我也尝试了这个(没有工作,并得到一个错误,说"位置0和#34没有行;

DataTable dt = (DataTable)Session["table"];
GridViewRow row = griditems.Rows[e.RowIndex];
dt.Rows[row.DataItemIndex]["Part"] = ((TextBox)(row.Cells[1].Controls[0])).Text;
dt.Rows[row.DataItemIndex]["Quantity"] = ((TextBox)(row.Cells[2].Controls[0])).Text;
dt.Rows[row.DataItemIndex]["Ship-To"] = ((CheckBox)(row.Cells[3].Controls[0])).Checked;

griditems.EditIndex = -1;
BindData();

我错过了aspx文件中的EditItemTemplate,还是我只是RowUpdating所有错误?

1 个答案:

答案 0 :(得分:0)

您可能需要退后一步,首先查看如何使用网格视图创建,更新,删除和阅读。此外,您可能需要检查this post