DataGrid专题

DataGrid控件是数据使用的过程中比较常用也比较重要的一个数据控件,这里想重点探讨一下怎么用它来实现各种数据显示的任务。

1.在绑定的数据列的最前方添加序号

首先定义一个数据绑定列BoundField设置HeaderText,编写DataGrid控件的ItemDataBound事件的代码nSnap1

cells[0]代表的是第一列的单元格;

2.在单独的一列中显示统计值

nSnap2

首先定义个全局变量,将各列的值累加到该变量,然后判断最后一列是否是页脚,若是则添加显示;

3.实现数据的分行变色

比如男士的数据行我们想让他的背景色是蓝色,女士的是粉红的话,我们值需要判断是Mr还是Ms,满足相应的条件后可以设置背景色;在ItemDataBound时间中应用e.Item.Backcolor=?来进行设置;

4.鼠标移动到某行的时候改变该行的背景色

该命令需要结合js的相关知识;添加的方法是在DataList的Attributes属性中添加相应的js命令;DataList中存在onmouseover和onmouseout事件(具体的说是基本每个控件都有这个)可以用js进行响应;nSnap3 具体效果:nSnap4

5.在DataGrid里实现分页

DataGrid存在两个属性,一个是allowpaging用来设置当前控件是否允许分页;另一个是CurrentPageIndex用来获取和设置当前页的索引;显示当前页数及所有页数函数: nSnap4

我们可以使用LinkButton实现页面的跳转,像定义四个LinkButton,设置commandArgument属性分别为next,last,prev,top。将它们的单击事件的处理程序设置为LinkButton_clickmSnap3

6.在DataGrid中自定义分页操作

一般情况下,DataGrid每次实现分页时都会从数据库读取一次数据,当数据很多时,这样会明显降低应用程序的性能DataGrid的AllowCustomPaging用来设置是否允许自定义分页操作,VirtualItemCount设置自定义时的总共实际项数,注意,若是设置了DataGrid的AllowCustomPaging为true就必须编写相应的事件处理函数,否则数据将停留在第一页;核心代码如图示qSnap1

7.在DataGrid中弹出一个详细信息窗口

其实详细信息的窗口本质上是一个简单的web页;具体的实现思路是将一个绑定列设置为HyperLinkColumn,设置对应的DataNavigateUrlField(该属性指向发生跳转时DataNavigateUrlFormatString中占位符的值) 及DataNavigateUrlFormatString(该属性指示跳转时的url的形式)DataTextField ="LastName",指定的是绑定的数据列的值,无此数据列将抛出异常;qSnap2
在DataNavigateUrlFormatString指定了在单击该超链接列是将弹出detail.aspx对应ID的IE窗口window.close()方法将直接关闭原始的网页;在detail.aspx中要对传入的ID值进行解析,然后查询数据库填充表单,最后显示;qSnap3

实际运行图 qSnap5 

 

 

 

 

 

 

 

 

另外的一种实现方式是为每个单独的项添加单击事件 aSnap1

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值