显示删除按钮:
<asp:CommandField ShowDeleteButton="True" ItemStyle-BorderWidth="1px"
ItemStyle-Width="60px" ItemStyle-BorderColor="Blue" ItemStyle-ForeColor="Blue" />
设置GridView属性:
后台事件:
这里要说明一下,我的行项主键ID是在我的GridView保存至数据库之后取得的,ID是数据库的一个自增长的整型字段,所以我的删除分为保存前(ID="")和保存后(ID!="")两种情况。
protected void GVY_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
#region 费用类+维修类
if (ddlPR_type.SelectedValue == "费用类" || ddlPR_type.SelectedValue == "维修类")
{
string ID = GVW.DataKeys[e.RowIndex].Value.ToString();
if (ID == "")
{
DataTable dt = GetGridViewDatas();
dt.Rows[e.RowIndex].Delete();
GVW.DataSource = dt;
GVW.DataBind();
}
if (ID != "")
{
string sql = "select * from MM_pr_main_mx where djbh = '" + djbh.Text.Trim() + "' and ID='" + ID + "'";
DataTable ds;
if (!DB.AF.execSql(sql, sqlconn, out ds))
{
ClientScript.RegisterStartupScript(GetType(), "", "<script>$.ligerDialog.error('查询采购申请明细信息失败!')</script>");
return;
}
if (ds.Rows.Count == 1)
{
sql = "delete from MM_pr_main_mx where djbh = '" + djbh.Text.Trim() + "' and ID='" + ID + "'";
string Msg;
if (!DB.AF.sqlExec(sql, sqlconn, out Msg))
{
ClientScript.RegisterStartupScript(GetType(), "", "<script>$.ligerDialog.error('删除采购申请行项失败!')</script>");
return;
}
}
DataTable dt = GetGridViewDatas();
DataRow[] drs = dt.Select("ID='" + ID + "'");
if (drs.Length != 1)
{
ClientScript.RegisterStartupScript(this.GetType(), "", "<script>$.ligerDialog.error('获取要删除的行项信息错误,请重试!')</script>");
return;
}
dt.Rows.Remove(drs[0]);
GVW.DataSource = dt;
GVW.DataBind();
}
}
#endregion
}