删除数据网格视图中的行
本文关键字:视图 网格 数据 数据网 删除 | 更新日期: 2023-09-27 17:56:33
我想删除更新面板中网格视图中的一行。但是我没有使用命令按钮.,而是使用链接按钮来获取确认消息。现在,如果我按确定,则应删除该记录(从db和frm girdview中删除)。我知道如何从数据库中删除,但在按下链接按钮时不知道,并删除记录。而且网格视图也在更新中 panel.so 它应该被反映。
感谢示例代码。
谢谢
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "Delete")
{
GridViewRow row = (GridViewRow)(((LinkButton)e.CommandSource).NamingContainer);
String productId = row.Cells[0].Text; // I suposed your product Id in very first column in gridview
//Delete Code goes here..........
...........................
}
}
您可以使用网格视图RowCommand
事件,例如...
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "Delete")
{
e.CommandArgument -- this return Data Key Value
//Deletion Code goes here.....
var brochureToDelete = (from b in dataContext.ArticleBrochures where b.ArticleId == ArticleId select b).FirstOrDefault();
if (brochureToDelete != null)
{
dataContext.ArticleBrochures.DeleteOnSubmit(brochureToDelete);
dataContext.SubmitChanges();
bindBrochureGridView(ArticleId);
// if your gridview in updatepanel
//Call update method of UpdatePanel
//UpdatePanel.Update();
}
}
设置PK_ID
以链接按钮的命令参数,如下所示
<asp:LinkButton runat="server" ID="btn_manage" Text="Delete" CommandArgument='<%#Eval("PK_ID") %>'
OnCommand="btn_manage_click">
</asp:LinkButton>
并在事件上访问此PK_ID
protected void btn_manage_click(object sender, CommandEventArgs e)
{
string ID = e.CommandArgument.ToString();
//you delete code and gridview bind code
}
绑定链接按钮 ID 作为主键。在客户端单击链接按钮时,将该 ID 保存在隐藏字段中。此隐藏字段值将是要删除的行的 id。
然后在服务器上单击链接按钮删除与隐藏字段值对应的行
我假设您有一个发送删除查询的方法。
创建一个RowDeleting
事件处理程序,使用 e.RowIndex
将行索引传递给 delete 方法。
使用此e.RowIndex
编写查询以删除表的第 n 行。 ,然后将数据绑定到 gridView。