由于将所有的37 笔数据显示出来显的太杂乱,所以我们将datagrid web 控件的分页功能打开。只要在datagrid web 控件的宣告中加入allowpaging="true",表示要将资料分页展示;而宣告pagesize="5" 表示每页要显示5 笔记录。另外在分页的时候,datagrid web 控件的currentpageindex 属性会被改变,所以在点选分页按钮的时候会引发onpageindexchanged事件。如果要正确的支持分页的功能,我们就必须利用这个事件程序将datagrid web 控件以新的currentpageindex 属性再和数据源系结一次。如下所示:
<%@import namespace=system.data.ado%>
<%@import namespace=system.data%>
<!--#include file="gettable.inc"-->
<html>
<form runat="server">
<asp:datagrid id="dga" runat="server"
allowpaging="true" pagesize="5" onpageindexchanged="dga_pagechg"/>
</form>
<script language="vb" runat="server">
sub page_load(sender as object, e as eventargs)
if page.ispostback=false then
dim dtdatatable as datatable=gettable("ch08\myweb.mdb", "members")
dga.datasource=dtdatatable.defaultview
page.databind()
end if
end sub
sub dga_pagechg(sender as object, e as datagridpagechangedeventargs)
dim dtdatatable as datatable=gettable("ch08\myweb.mdb", "members")
dga.datasource=dtdatatable.defaultview
page.databind()
end sub
</script>
</html>