繁体   English   中英

绑定到数据表时进行GridView编辑

[英]GridView edit when bound to a Datatable

我正在创建一个网站,我们的客户可以在该网站上直接向我们订购零件。 我有一个数据表设置,当用户单击一个按钮时,它会将订单的快速详细信息添加到gridview。 在gridview中,启用了“编辑”和“删除”按钮。 delete函数可以正常工作,但是当您尝试编辑信息时,它不会使用新信息更改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();
}

尝试此操作时,它将使用原始输入值向后显示gridview。 我也尝试过此方法(无法正常工作,并显示“位置0没有行”的错误:

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出错?

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM