GridView删除事件

GridView删除事件首先:转摘一段GridView删除的文章RowDeleting和RowDeleted事件RowDeleting发生在删除数据之前,RowDeleted发生在删除数据之后。使用RowDeletin

大家好,又见面了,我是你们的朋友全栈君。

首先:转摘一段GridView删除的文章

RowDeleting和RowDeleted事件
RowDeleting发生在删除数据之前,RowDeleted发生在删除数据之后。
使用RowDeleting事件,可以在真正删除前再次确认是否删除,可以通过设置GridViewDeleteEventArgs.Cancel=True来取消删除;也可以用于判断当前数据库记录数,如果只剩一条记录且数据库不能为空则提示并取消删除操作。
使用RowDeleted事件,可以在删除后,通过GridViewDeletedEventArgs的Exception属性判断删除过程中是否产生异常,如无异常,则可以显示类似于” 1 Records deleted” 之类的提示信息。

Example:
protected void GridView1_RowDeleting(object sender, GridViewDeleteEventArgs e)
{
     //取得当前行号,并取得当前行的GridViewRow对象
     int index=e.RowIndex ;
     GridViewRow gvr=GridView1.Rows[index];

     //取得当前行第二个单元格中的文字
     str1 = gvr.Cells[1].Text;

     //进行提示
     Message.Text  =”您将删除一个用户,其姓名为”+str1 ;
}

protected void GridView1_RowDeleted(object sender, GridViewDeletedEventArgs e)
{
     //如果没有产生异常,则提示成功删除,否则提示删除失败
     if (e.Exception == null)
          Message.Text += “<br>您成功删除了”+str1 ;
     else
          Message.Text += “删除失败,请联系管理员”;
}

其次:需要特别说明,如果在GridView中添加了模板列并在其中添加了按钮,只要按钮的CommandName=”Delete” 则GridView控件自动触发 GridView1_RowDeleting 事件,因此你必须添加后台代码来实现。

第三:对删除按钮增加“确定”对话框,有三种方法
1、在后台类代码中编写
    lb.Attributes.Add(“onclick”, “return confirm(‘您真的要删除此行吗?’)”);
2、在前台代码中编写
    <div id=”de” onclick=”JavaScript:return confirm(‘确定删除吗?’)”>删除</div>
在Div中首先触发的是OnClick事件,然后执行其他事件
例如:<a href=”Default.aspx”  onclick=”return confirm(‘确定删除吗?’)”>删除</a>
首先执行,OnClick,然后执行超级链接,若OnClick被取消了,其余的也被取消了。
3、有的控件可能还有OnClientClick事件。
<asp:LinkButton ID=”LinkButton1″ runat=”server” CausesValidation=”False” CommandName=”Delete”  Text=”删除” OnClientClick=”return confirm(‘确认要删除吗?’)></asp:LinkButton>

我一般优先选择第三种方法。

附录:
GridView事件介绍的文章

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/155729.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • selenium 常见面试题以及答案

    selenium 常见面试题以及答案selenium常见面试题以及答案 1.怎么判断元素是否存在?判断元素是否存在和是否出现不同,判断是否存在意味着如果这个元素压根就不存在,就会抛出NoSuchElementException这样就可以使用trycatch,如果catch到NoSuchElementException就返回false 2.如何判断元素是否出现?判断元素是否出现,存在两种情况,一种是该元素压根就没有,自…

    2022年6月20日
    28
  • datagrip 2021激活码【注册码】

    datagrip 2021激活码【注册码】,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月20日
    35
  • 从汇编语言到Windows内核编程_windows内核编程pdf

    从汇编语言到Windows内核编程_windows内核编程pdf天书夜读-从汇编语言到Windows内核编程链接:https://pan.baidu.com/s/1sk6alCWRQvDziEYLUrxArw提取码:podo

    2022年10月8日
    0
  • 基于单片机的智能交通灯控制系统的设计实验_单片机控制系统红绿灯设计

    基于单片机的智能交通灯控制系统的设计实验_单片机控制系统红绿灯设计本设计采用了一套可用于智能交通灯的方案。该套设计方案采用51单片机作为系统的主控芯片,使用LED数码管,红黄绿三种颜色的发光二极管。通过对定时器的设置和中断的控制,实现交通信号灯的功能。本设计引入了车流量检测,通过在地面铺设环形线圈传感器,测量车辆通过数量,检测车流量的大小,来自动调节红绿灯的显示时间。还设置了按键模块,在紧急情况时可通过按键模块实现任一方向的可持续通行的效果,经过仿真对本文方案进行验证。测试结果表明,所设计的智能信号交通灯微机控制系统符合设计要求。……

    2022年9月24日
    0
  • Socket和DatagramSocket的区别[通俗易懂]

    Socket和DatagramSocket的区别[通俗易懂]简而言之就是:Socket使用的tcp连接,需要先连接之后才能发送数据。DatagramSocket使用的UDP连接,客户端不需要先连接数据,可以直接发送给指定服务端。DatagramSocket:客户端发送(直接发送数据,没有连接的过程):protectedvoidconnectServerWithUDPSocket(Contextcontext,Stringid…

    2022年6月11日
    39
  • mysql(八)日志介绍

    mysql(八)日志介绍

    2021年9月13日
    58

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号