学习目的:学会用DATAGRID分页显示
虽然说DATAGRID的分页显示效率不怎么高,但是不管怎么说,它是最方便的分页显示,对于做一个留言簿还是相当简单实用的。对于启用分页功能还有一个重要要求,只能在DATADRID控件的数据源实现了ICOLLECTION接口的情况下才能启用分页功能,而DATAREADER没有这个接口,所以必须使用DATATABLE来代替。
1<script language="c#" runat="server">
2void Page_Load()
3{
4string strConnection="Provider=Microsoft.Jet.OleDb.4.0;Data Source=";
5strConnection+=Server.MapPath("guestbook.mdb");
6OleDbConnection objConnection=new OleDbConnection(strConnection);
7OleDbDataAdapter objDataAdapter=new OleDbDataAdapter("select * from guestbook",objConnection);
8DataSet objDataSet=new DataSet();
9objDataAdapter.Fill(objDataSet);
10dgrdMain.DataSource=objDataSet;
11dgrdMain.DataBind();
12}
13void dgrdMain_PageIndexChanged(Object sender, DataGridPageChangedEventArgs e)
14{
15dgrdMain.CurrentPageIndex = e.NewPageIndex;
16DataBind();
17}
18</script>
1<html>
2<body>
3<asp:datagrid allowpaging="true" borderwidth="0" cellpadding="1" id="dgrdMain" onpageindexchanged="dgrdMain_pageindexchanged " pagesize="3" runat="server" showheader="true" 启用分页功能="" 每一页显示三条记录="" 调用第×页的函数为dgrdmain_pageindexchanged()=""></asp:datagrid>
4</body>
5</html>
--------------------------------------------------------------------------------
1<script language="vb" runat="server">
2subPage_Load
3dim objConnection as OleDbConnection
4dim objDataAdapter as OleDbDataAdapter
5dim objDataSet as DataSet
6objConnection=new OleDbConnection("Provider=Microsoft.Jet.OleDb.4.0;Data Source="+Server.MapPath("guestbook.mdb"))
7objDataAdapter=new OleDbDataAdapter("select * from guestbook",objConnection)
8objDataSet=new DataSet
9objDataAdapter.Fill(objDataSet)
10dgrdMain.DataSource=objDataSet
11dgrdMain.DataBind()
12end sub
13sub dgrdMain_PageIndexChanged(sender as object,e as datagridpagechangedeventargs)
14dgrdMain.CurrentPageIndex = e.NewPageIndex
15DataBind
16end sub
17</script>
1<html>
2<body>
3<asp:datagrid allowpaging="true" borderwidth="0" cellpadding="1" id="dgrdMain" onpageindexchanged="dgrdMain_pageindexchanged " pagesize="3" runat="server" showheader="true" 启用分页功能="" 每一页显示三条记录="" 调用第×页的函数为dgrdmain_pageindexchanged()=""></asp:datagrid>
4</body>
5</html>
这样就是最简单的分页,我们可以用参数pagestyle-mode="nextprev/numericpages"来设定是显示上一页、下一页方式还是直接选择页面的数字方式来实现页面跳转。如果是前者我们可以用pagestyle-nextpagetext来设定包含下一页链接的文本,用pagestyle-prevpagetext来设定包含上一页链接的文本;如果是后者我们可以用PagerStyle-PageButtonCount来设定在使用省略号之前显示的页面编号数量(默认是10)
今天就说到这里,明天说一下SESSION和COOKIE。