如何在编辑按钮旁边访问gridview删除按钮

时间:2013-02-11 19:23:49

标签: gridview linkbutton

如果有人在网格视图中选择“删除”链接,我会遇到弹出“删除确认”的问题。

更具体地说,单击“删除”链接时弹出窗口可以正常工作,但如果单击同一单元格中旁边的“编辑”链接,弹出窗口也会出现,然后单击“取消”当它提供“更新”和“取消”选项时,更新操作的按钮。

我相信这是因为我通过索引访问Delete控件,当我单击Edit按钮时,“Edit”链接的Cancel按钮会获取默认情况下“Delete”按钮的位置索引。显然,不希望弹出“取消”操作。我正在使用gridview的内置“允许编辑”和“允许删除”选项。以下是我正在使用的代码。

protected void actionPlanGirdView_RowDataBound(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.DataRow) 
    {
        // reference the Delete LinkButton
        LinkButton db = (LinkButton)e.Row.Cells[0].Controls[2];

        db.OnClientClick = "return confirm('Are you certain you want to delete the record?');";

    }
}

2 个答案:

答案 0 :(得分:1)

更新,我找到了解决此问题的方法。在使用自动生成的.NET gridview的“插入”和“删除”按钮的情况下,如果要以编程方式访问“删除”按钮,我使用下面这样做,访问LinkBut​​ton的Text属性。内部if语句检查LinkBut​​ton是否为Delete链接,就好像您还使用自动生成的Insert链接一样,当您使用时,索引位置可以是“更新/取消”组合的“取消”按钮的位置单击Gridview中的Insert。

protected void actionPlanGirdView_RowDataBound(object sender, GridViewRowEventArgs e)
{
    if (e.Row.RowType == DataControlRowType.DataRow)
    {
        // reference the Delete LinkButton
        LinkButton db = (LinkButton)e.Row.Cells[0].Controls[2];

            if (db.Text == "Delete")
            {
                db.OnClientClick = "return confirm('Are you certain you want to delete the record?');";
            }
    }
}

答案 1 :(得分:0)

尝试使用FindControl

LinkButton deleteButton = (LinkButton)e.Row.FindControl("deleteButton");
祝你好运。