在VS2005提供的GridView中我们可以直接添加一个CommandField删除列:<asp:CommandField ShowDeleteButton="True" />,然后在GridView的OnRowDeleting事件中完成删除。但一般情况下我们在做这种删除操作时都需要先让用户确认一下,然后后再删除记录,以避免误操作引起的误删除。
那我们可以通过下面方法给GridView删除前加上一个确认对话框。
首先,在GridView的属性对框话框中点击“Columns”进入它的"字段"设计器;或者在设计窗口直接点击GridView控件右上角的那个小箭头,点击"编辑列",进入"字段"设计器。
接着在"字段"设计器中的左下方"选定的字段"框中,选择以前已加上的那个CommandField“删除”列,这时在右边它的属性列表下会看到一个"将此它段转换为 TemplateFied"的项,点击将它转换为TemplateFied列。
然后退出"字段"设计器,切换到源码视图你会发现该列已由原来的:
<asp:CommandField ShowDeleteButton="True" />
变为了:
![4f6b3cfb2f9b3e1b242df23f.jpg](https://i-blog.csdnimg.cn/blog_migrate/34a5143441145f844967d37ab92048db.gif)
![c94e855bdf9c8a682934f03f.jpg](https://i-blog.csdnimg.cn/blog_migrate/34a2b8fa0c44492a771f0e8c916a28cf.gif)
![3b493128d4856ad9023bf63f.jpg](https://i-blog.csdnimg.cn/blog_migrate/4d19be0692604e15a63ec9f8e46e9a1e.gif)
![7e3dc02f2f9b7676359bf73f.jpg](https://i-blog.csdnimg.cn/blog_migrate/fa87ac13cb26d43553017b2dd97b8259.gif)
![1d5fbeb7c9584b8c37d3ca3f.jpg](https://i-blog.csdnimg.cn/blog_migrate/a005b6a21129c20555a75537b09746d2.gif)
![ca4ecd36c92a5d795ab5f53f.jpg](https://i-blog.csdnimg.cn/blog_migrate/270c690c0d36dc785cd9b9595b7b2df9.gif)
![45d12ce8147c6891d439c93f.jpg](https://i-blog.csdnimg.cn/blog_migrate/5bd9098157248d4ab44b98f874a15fd0.gif)
最后在<asp:LinkButton>中加入:OnClientClick="return confirm('您确认删除该记录吗?');"
这样点击删除时就会先在客户端弹出“您确认删除该记录吗?”对话框,点击"确定",则进行删除;点击"取消",则不删除.
而原来在onRowDeleting事件中写的代码完全不用改变。鼠标在GridView上移动时变换颜色
![28b7303bb2b264b13b87ce3f.jpg](https://i-blog.csdnimg.cn/blog_migrate/fc29793c9403c88d6dda9efcfd2bbdd2.gif)
![a864dff13c35b712342acc3f.jpg](https://i-blog.csdnimg.cn/blog_migrate/737a5545b440d2ea69f730a18a922e45.gif)
![24e30c523d98981e1138c23f.jpg](https://i-blog.csdnimg.cn/blog_migrate/2c6c746f48726572c9341d23029c30c0.gif)
![2b4e235e1a8a0d01faf2c03f.jpg](https://i-blog.csdnimg.cn/blog_migrate/43a1eed6270bba1a4146bd01abf7daa2.gif)
![cb5d53023f4164c5e850cd3f.jpg](https://i-blog.csdnimg.cn/blog_migrate/c5a58f2db1d31dd486c6e31056bfd775.gif)
![0e5cb641f740ec539213c63f.jpg](https://i-blog.csdnimg.cn/blog_migrate/43c88ab131f8281ea9bdc65a7cd98c15.gif)
![e59657139da1ee3ccb80c43f.jpg](https://i-blog.csdnimg.cn/blog_migrate/1ef42c92727be3deb4bcc8391cb8f9ae.gif)
![8d77557cda323b7a0dd7da3f.jpg](https://i-blog.csdnimg.cn/blog_migrate/a5d66f859759b181413194fd5063853e.gif)
![d4e4803a1e65cf6196ddd83f.jpg](https://i-blog.csdnimg.cn/blog_migrate/0c843657aa6030640be8cc8da7041ff2.gif)
![89b94446bb8607c0b3b7dc3f.jpg](https://i-blog.csdnimg.cn/blog_migrate/74d13b8bd3eaffef444422c610ff164f.gif)
![2497df85eee26b68c75cc33f.jpg](https://i-blog.csdnimg.cn/blog_migrate/ba66096f950b8fb51f5893c29f02ff95.gif)
![b350bc80aa058ee00df4d23f.jpg](https://i-blog.csdnimg.cn/blog_migrate/02040a9193208287a28510937b3bccb6.gif)
![acd335a016466fefcaefd03f.jpg](https://i-blog.csdnimg.cn/blog_migrate/fcee42a0da4449ca79220da4619b344f.gif)
RowCreated:开被创建时发生
e.Row.RowType == DataControlRowType.DataRow 判断是否是数据行
DataControlRowType的枚举有:
DataRow数据行
EmptyDataRow
Footer
Header
Pager
Separator
如果对单元格进行变换。
![1290d4afd75d284b4a36d63f.jpg](https://i-blog.csdnimg.cn/blog_migrate/8405149e33a1799cc2a3a08c037f48f9.gif)
![f734d028cfee4e7a5243c13f.jpg](https://i-blog.csdnimg.cn/blog_migrate/adae4be5cb39a580f89b64cf53227d89.gif)
![d838f53a58f1a5b0b311c73f.jpg](https://i-blog.csdnimg.cn/blog_migrate/9f951340245aa2228d0aecf573c4aeab.gif)
![d58b930b5584f2ed2fddd43f.jpg](https://i-blog.csdnimg.cn/blog_migrate/22ec50c6a9f33236f696a23df3856586.gif)
![555249ad0e6ffd8e7dd92a3f.jpg](https://i-blog.csdnimg.cn/blog_migrate/e0c5d4f64f1e84031b295016056a1f30.gif)
![4d271ef0bfa3cd51b17ec53f.jpg](https://i-blog.csdnimg.cn/blog_migrate/1d36db3453742425aa65bc95290c51b0.gif)
![30b946ce5e6bd35200e9283f.jpg](https://i-blog.csdnimg.cn/blog_migrate/40f63b969ffbc356c87f8acd08c4e52e.gif)
不足。前端页面代码过多。站带宽。
在GridView的第一列使用CheckBox控制每一行数据,是经常使用的,这里面我要记录的是全选、全消、选中行的底色更改,还有就是在提交数据的时候,取选中的行的编号等功能