ASP.NET GridView自动更新操作的常见错误
来源:互联网 发布:mac 终端 默认路径 编辑:程序博客网 时间:2024/06/01 10:34
GridView的RowDeleting、RowUpdating和RowCommand事件
GridView的RowDeleting、RowUpdating和RowCommand事件
2011-07-30 18:23:41| 分类: 默认分类 | 标签: |字号大中小 订阅
何时触发:任何在GridView中设定了CommandName的控件都可以触发该事件。
代码案例:
<asp:LinkButton runat="server" ID="lbtnDelete" Text="删除"
CommandArgument='<%# Eval("StudentNo") %>' CommandName="Del"/>
说明:
需要在GridView中执行某个命令时能够自定义行为,而不是有GridView自动来完成,可使用该事件。比如执行自定义的删除和修改功能。
该事件可同时处理一个GridView发出的不同的操作指令,如删除和修改,如何判断某一时刻做什么操作就成为了关键。我们可以通过CommandName来区分每个不同的指令。如
if(commandName=="Del"){
//执行删除操作....
}else if(commandName=="Update"){
//执行修改操作....
}
2. RowDeleting:行正在删除事件
何时触发:
1.如果GridView是通过设置 DataSourceID="odsStudent" 来指定数据源的,则在执行删除时总会调用该事件
2.只要引发事件的CommandName是“Delete”就会自动引发RowDeleting事件。
代码案例:
1.<asp:CommandField ShowDeleteButton="True" ShowEditButton="True" />
2.<asp:LinkButton runat="server" ID="lbtnDelete" Text="删除" CommandName="Delete"/>
说明:
如果GridView的数据源是通过设置 DataSourceID="odsStudent" 来指定,则必须为ObjectDataSource指定DeleteMenthod方法,因为GridView此时某自动寻找DeleteMenthod属性指定的删除方法,如果没有指定的方法,则会报错,如下图所示:
当然此时也会触发RowCommand事件,我们可以在RowCommand事件中手动调用删除方法来执行删除功能,但必须在RowDeleting事件处理方法中写上 "e.Cancel = true;",取消该事件的默认行为。所以如果不需要使用ObjectDataSource的自动绑定删除功能,最好不要将控件的CommandName设为“Delete”。
如果GridView的DataSource是通过编码手动指定的,则执行删除时不需要写“e.Cancel = true;”,但RowDeleting事件依然会调用,但不会如寻找和依赖ObjectDataSource的DeleteMethod方法了。可以看出只要GridView指定了DataSourceId,在删除Gridview记录时就会自动找ObjectDataSource的相关的DeleteMethod。
3. RowUpdating:行正在修改事件
各项操作和注意事项和RowDeleting一样。
总结:
1. GridView中一定是先调用RowCommand事件再调用RowDeleting或RowUpdating事件
2. 不要在自定义的CommandName属性中使用“Delete、Update、Insert、Select”四个名称,这四个名称被GridView自动完成事件所占用。
- ASP.NET GridView自动更新操作的常见错误
- ASP.NET gridview 的基本操作
- asp.net常见错误
- Asp.net 常见错误
- asp.net操作Gridview单元格
- asp.net GridView 事件操作
- VS.NET调试 ASP.NET出现的常见错误总结
- VS.NET调试 ASP.NET出现的常见错误总结
- ASP.NET里面的GridView的Row操作
- ASP.net常见错误解决方案
- ASP.NET常见错误提示
- ASP.NET常见错误大全
- ASP.NET MVC 常见错误
- ASP.NET常见错误大全
- ASP.NET操作EXCEL出现的错误
- asp.net程序员六个常见的开发错误
- asp.net部署上IIS后常见的十个错误
- asp.net部署上IIS后常见的十个错误
- Android自动化测试初探(一): 捕获Activity上的Element
- PHPCMS数据表分析---v9版本
- Python的内建函数str()与repr()
- 什么要运用Div Css进行网页设计?
- CSS 字数太多时出现省略号
- ASP.NET GridView自动更新操作的常见错误
- 整理 SQL 数据库导出迁移用户账户及权限
- ORACLE用户自动被锁解决方法
- oracle复制表数据,复制表结构
- Winform TextBox中只能输入数字的几种常用方法(C#)
- 使用org.apache.commons.net.ftp包开发FTP客户端,实现进度汇报,实现断点续传,中文支持
- Oracle用户被锁的原因以及解决办法
- android:ellipsize省略文字用法
- 使用margin居中常见问题