C#版本
DataGridPaging.aspx
<%@ Page language="c#" EnableViewState = "true" Codebehind="DataGridPaging.aspx.cs"
AutoEventWireup="false" Inherits="eMeng.Exam.DataGridPaging.DataGridPaging" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<meta content="Visual Basic 7.0" name="CODE_LANGUAGE">
<meta content="Javascript" name="vs_defaultClientscript">
<meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
</HEAD>
<body MS_POSITIONING="GridLayout">
<form id="Form1" runat="server">
<asp:datagrid id="MyDataGrid" runat="server" AutoGenerateColumns="False"
HorizontalAlign="Center" AlternatingItemStyle-BackColor="#eeeeee"
HeaderStyle-BackColor="#aaaadd" Font-Size="8pt" Font-Name="Verdana"
CellSpacing="0" CellPadding="3" GridLines="Both" BorderWidth="1"
BorderColor="black" OnPageIndexChanged="MyDataGrid_Page" PagerStyle-HorizontalAlign="Right"
PagerStyle-Mode="NumericPages" PageSize="5" AllowPaging="True">
<AlternatingItemStyle BackColor="#EEEEEE"></AlternatingItemStyle>
<HeaderStyle BackColor="#AAAADD" Font-Bold="True" HorizontalAlign="Center"></HeaderStyle>
<PagerStyle HorizontalAlign="Right" Mode="NumericPages"></PagerStyle>
<Columns>
<asp:BoundColumn HeaderText="标题" DataField="Title" HeaderStyle-Width="480px">
</asp:BoundColumn>
<asp:BoundColumn HeaderText="发表日期" DataField="CreateDate" DataFormatString="{0:yyyy-MM-dd hh:mm:ss}">
</asp:BoundColumn>
</Columns>
</asp:datagrid>
<p style="FONT-SIZE:9pt" align="center">
<asp:label id="lblPageCount" runat="server"></asp:label>
<asp:label id="lblCurrentIndex" runat="server"></asp:label>
<asp:linkbutton id="btnFirst" onclick="PagerButtonClick" runat="server" Font-Name="verdana"
Font-size="8pt" ForeColor="navy" CommandArgument="0"></asp:linkbutton>
<asp:linkbutton id="btnPrev" onclick="PagerButtonClick" runat="server" Font-Name="verdana"
Font-size="8pt" ForeColor="navy" CommandArgument="prev"></asp:linkbutton>
<asp:linkbutton id="btnNext" onclick="PagerButtonClick" runat="server" Font-Name="verdana"
Font-size="8pt" ForeColor="navy" CommandArgument="next"></asp:linkbutton>
<asp:linkbutton id="btnLast" onclick="PagerButtonClick" runat="server" Font-Name="verdana"
Font-size="8pt" ForeColor="navy" CommandArgument="last"></asp:linkbutton>
</p>
</form>
</body>
</HTML>
DataGridPaging.aspx.cs
using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Data.OleDb;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
namespace eMeng.Exam.DataGridPaging
{
/// <summary>
/// DataGridPaging 的摘要说明。
/// </summary>
public class DataGridPaging : System.Web.UI.Page
{
protected System.Web.UI.WebControls.DataGrid MyDataGrid;
protected System.Web.UI.WebControls.Label lblPageCount;
protected System.Web.UI.WebControls.Label lblCurrentIndex;
protected System.Web.UI.WebControls.LinkButton btnFirst;
protected System.Web.UI.WebControls.LinkButton btnPrev;
protected System.Web.UI.WebControls.LinkButton btnNext;
protected System.Web.UI.WebControls.LinkButton btnLast;
private OleDbConnection cn = new OleDbConnection();
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
btnFirst.Text = "最首页";
btnPrev.Text = "前一页";
btnNext.Text = "下一页";
btnLast.Text = "最后页";
OpenDatabase();
BindGrid();
}
private void OpenDatabase()
{
cn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("xxxx.mdb");
cn.Open();
}
private void ShowStats()
{
lblCurrentIndex.Text = "第 " + (MyDataGrid.CurrentPageIndex + 1).ToString() + " 页";
lblPageCount.Text = "总共 " + MyDataGrid.PageCount.ToString() + " 页";
}
public void PagerButtonClick(object sender, EventArgs e)
{
string arg = ((LinkButton)sender).CommandArgument.ToString();
switch(arg)
{
case "next":
if (MyDataGrid.CurrentPageIndex < (MyDataGrid.PageCount - 1))
{
MyDataGrid.CurrentPageIndex += 1;
}
break;
case "prev":
if (MyDataGrid.CurrentPageIndex > 0)
{
MyDataGrid.CurrentPageIndex -= 1;
}
break;
case "last":
MyDataGrid.CurrentPageIndex = (MyDataGrid.PageCount - 1);
break;
default:
MyDataGrid.CurrentPageIndex = System.Convert.ToInt32(arg);
break;
}
BindGrid();
ShowStats();
}
public void BindGrid()
{
OleDbConnection myConnection = cn;
DataSet ds = new DataSet();
OleDbDataAdapter adapter = new OleDbDataAdapter("Select Title,CreateDate from Document", myConnection);
adapter.Fill(ds, "Document");
MyDataGrid.DataSource = ds.Tables["Document"].DefaultView;
MyDataGrid.DataBind();
ShowStats();
}
public void MyDataGrid_Page(object sender, DataGridPageChangedEventArgs e)
{
int startIndex ;
startIndex = MyDataGrid.CurrentPageIndex * MyDataGrid.PageSize;
MyDataGrid.CurrentPageIndex = e.NewPageIndex;
BindGrid();
ShowStats();
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
}
}
VB.NET版本
DataGridPaging.aspx
<%@ Page Language="vb" AutoEventWireup="false" Codebehind="DataGridPaging.aspx.vb" Inherits="DataGridPaging"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<meta content="Visual Basic 7.0" name="CODE_LANGUAGE">
<meta content="Javascript" name="vs_defaultClientscript"><br> <meta content="<a href="http://schemas.microsoft.com/intellisense/ie5">http://schemas.microsoft.com/intellisense/ie5</a>" name="vs_targetSchema"><br> </HEAD><br> <body MS_POSITIONING="GridLayout"><br> <form id="Form1" runat="server"><br> <asp:datagrid id="MyDataGrid" runat="server" AlternatingItemStyle-BackColor="#eeeeee"<br> HeaderStyle-BackColor="#aaaadd" Font-Size="8pt" Font-Name="Verdana" CellSpacing="0"<br> CellPadding="3" GridLines="Both" BorderWidth="1" BorderColor="black"<br> OnPageIndexChanged="MyDataGrid_Page" PagerStyle-HorizontalAlign="Right"<br> PagerStyle-Mode="NumericPages" PageSize="5" AllowPaging="True"><br> <AlternatingItemStyle BackColor="#EEEEEE"></AlternatingItemStyle><br> <HeaderStyle BackColor="#AAAADD"></HeaderStyle><br> <PagerStyle HorizontalAlign="Right" Mode="NumericPages"></PagerStyle><br> </asp:datagrid><br> <p style="font-size:9pt"><br> <asp:label id="lblPageCount" runat="server"></asp:label>&nbsp;<br> <asp:label id="lblCurrentIndex" runat="server"></asp:label><br> <asp:linkbutton id="btnFirst" onclick="PagerButtonClick" runat="server"<br> Font-Name="verdana" Font-size="8pt" ForeColor="navy" CommandArgument="0"><br> </asp:linkbutton>&nbsp;<br> <asp:linkbutton id="btnPrev" onclick="PagerButtonClick" runat="server"<br> Font-Name="verdana" Font-size="8pt" ForeColor="navy" CommandArgument="prev"><br> </asp:linkbutton>&nbsp;<br> <asp:linkbutton id="btnNext" onclick="PagerButtonClick" runat="server"<br> Font-Name="verdana" Font-size="8pt" ForeColor="navy" CommandArgument="next"><br> </asp:linkbutton>&nbsp;<br> <asp:linkbutton id="btnLast" onclick="PagerButtonClick" runat="server"<br> Font-Name="verdana" Font-size="8pt" ForeColor="navy" CommandArgument="last"><br> </asp:linkbutton><br> </p><br> </form><br> </body><br></HTML></P>
<P>DataGridPaging.aspx.vb</P>
<P>Imports System.Data.SqlClient<br>Imports System.Data<br>Imports System.Web.UI</P>
<P>Public Class DataGridPaging<br> Inherits System.Web.UI.Page</P>
<P> Protected WithEvents MyDataGrid As System.Web.UI.WebControls.DataGrid<br> Protected WithEvents btnFirst As System.Web.UI.WebControls.LinkButton<br> Protected WithEvents btnPrev As System.Web.UI.WebControls.LinkButton<br> Protected WithEvents btnNext As System.Web.UI.WebControls.LinkButton<br> Protected WithEvents btnLast As System.Web.UI.WebControls.LinkButton<br> Protected WithEvents lblCurrentIndex As System.Web.UI.WebControls.Label<br> Protected WithEvents lblPageCount As System.Web.UI.WebControls.Label<br> Protected WithEvents DataGrid1 As System.Web.UI.WebControls.DataGrid</P>
<P>#Region " Web Form Designer Generated Code "</P>
<P> 'This call is required by the Web Form Designer.<br> <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()</P>
<P> End Sub</P>
<P> Private Sub Page_Init(ByVal sender As System.Object,_<br> ByVal e As System.EventArgs) Handles MyBase.Init<br> 'CODEGEN: This method call is required by the Web Form Designer<br> 'Do not modify it using the code editor.<br> InitializeComponent()<br> End Sub</P>
<P>#End Region</P>
<P> Private Sub Page_Load(ByVal sender As System.Object,_<br> ByVal e As System.EventArgs) Handles MyBase.Load<br> btnFirst.Text = "最首页"<br> btnPrev.Text = "前一页"<br> btnNext.Text = "下一页"<br> btnLast.Text = "最后页"<br> OpenDatabase()<br> BindGrid()<br> End Sub</P>
<P><br> Sub MyDataGrid_Page(ByVal sender As Object, ByVal e As DataGridPageChangedEventArgs)<br> Dim startIndex As Integer<br> startIndex = MyDataGrid.CurrentPageIndex * MyDataGrid.PageSize<br> MyDataGrid.CurrentPageIndex = e.NewPageIndex<br> BindGrid()<br> ShowStats()<br> End Sub</P>
<P> Sub BindGrid()<br> Dim myConnection As SqlConnection = cn<br> Dim ds As DataSet = New DataSet()<br> Dim adapter As SqlDataAdapter = New SqlDataAdapter("Select * from Orders", myConnection)<br> adapter.Fill(ds, "Orders")<br> MyDataGrid.DataSource = ds.Tables("Orders").DefaultView<br> MyDataGrid.DataBind()<br> ShowStats()</P>
<P> End Sub</P>
<P> Sub PagerButtonClick(ByVal sender As Object, ByVal e As EventArgs)<br> 'used by external paging UI<br> Dim arg As String = sender.CommandArgument</P>
<P> Select Case arg<br> Case "next"<br> If (MyDataGrid.CurrentPageIndex < (MyDataGrid.PageCount - 1)) Then<br> MyDataGrid.CurrentPageIndex += 1<br> End If<br> Case "prev"<br> If (MyDataGrid.CurrentPageIndex > 0) Then<br> MyDataGrid.CurrentPageIndex -= 1<br> End If<br> Case "last"<br> MyDataGrid.CurrentPageIndex = (MyDataGrid.PageCount - 1)<br> Case Else<br> 'page number<br> MyDataGrid.CurrentPageIndex = System.Convert.ToInt32(arg)<br> End Select<br> BindGrid()<br> ShowStats()<br> End Sub</P>
<P> Sub ShowStats()<br> lblCurrentIndex.Text = "第 " + (MyDataGrid.CurrentPageIndex + 1).ToString() + " 页"<br> lblPageCount.Text = "总共 " + MyDataGrid.PageCount.ToString() + " 页"<br> End Sub</P>
<P> Public cn As New SqlClient.SqlConnection()<br> Public Sub OpenDatabase()<br> cn.ConnectionString = "Server=.;Database=NorthWind;User Id=sa;Password=;"<br> cn.Open()<br> End Sub<br>End Class</P></div>
<div></div>
</div><div id="Message" class="Message"></div></font></div>
<div></div>
</td>
<table width="575" border="0" cellpadding="0" cellspacing="0">
<tr>
</tr>
<tr>
<td align="right" height=25 bgcolor=#F7F7F7 >
<script type='text/javascript'>
var __sogou_ad = new Array();
__sogou_ad["pid"] = 'jz123';
__sogou_ad["fmt"] = 'h_468_90'
__sogou_ad["iw"] = '468';
__sogou_ad["ih"] = '90';
__sogou_ad["charset"] = 'gb2312';
__sogou_ad["c_bo"] = 'ACD8FF';
__sogou_ad["c_bg"] = 'F0F8FF';
__sogou_ad["c_li"] = '0434CF';
__sogou_ad["c_te"] = '000000';
__sogou_ad["c_bb"] = 'ACD8FF';
</script>
<script src='http://images.sohu.com/cs/jsfile/js/SogouUnionCPC.js'></script>
[<a href=javascript:window.print()>打 印</a>]
</tr>
</table>
<table width="575" border="0" cellpadding="0" cellspacing="0">
<tr>
</tr>
<tr>
<td align="right" height=25 bgcolor=#F7F7F7 style="display:block;padding:0px 10px">
<font color=#000000>[<script language=JavaScript src="/Article/Hits.Asp?ArticleID=4801"></script>]</font>
[<a href="javascript:history.go(-1)">返回上一页</a>]
[<a href="/user/favorite.asp?action=add&topic=一个功能齐全的DataGrid分页例子">收 藏</a>]</td>
</tr>
<tr>
<table width="575" border="0" cellpadding="0" cellspacing="0">
<tr>
</tr>
<tr>
<td style="display:block;padding:0px 10px"><div><font color=#000000>上一篇文章:</font><a href=/Article/10/131/2005/200507204800.html>保存图片流到数据库之后固定显示新法</a></div><div><font color=#000000>下一篇文章:</font><font color=#000000><a href=/Article/10/131/2005/200507204802.html>Asp.Net 使用 GDI+ 绘制3D饼图入门篇源码</a></font></div></td>
</tr>
</table>
<table width="575" border="0" cellpadding="0" cellspacing="0">
<tr>
<td class="titlebg1">∷相关文章评论∷ (评论内容只代表网友观点,与本站立场无关!) [<a href=/Article/comment.asp?ArticleID=4801 target=_blank>更多评论</a>...]</td>
</tr>
<tr valign="top">
<td></td>
</tr>
</table>
</td>
</tr>
</table>
<table width="778" border="0" align="center" cellpadding="0" cellspacing="0" class="tableborder">
<tr>
<td height="23" align="right">
<table width="100%" border="0" cellspacing="0" class="tablebody8" cellpadding="0">
<tr>
<td height="5"></td>
</tr>
<tr>
<td height="23" align="right" valign="middle"><center><a href="/support/about.asp" class="navmenu2">关于本站</a> -
<a href="/support/help.asp" class="navmenu2">网站帮助</a> -
<a href="/support/advertise.asp" class="navmenu2">广告合作</a> -
<a href="/support/declare.asp" class="navmenu2">下载声明</a> -
<a href="/link/" target="_blank" class="navmenu2">友情连接</a> -
<a href="/support/sitemap.asp" class="navmenu2">网站地图</a> -
<a href="#" target="_blank" class="navmenu2">人才招聘</a>
</tr>
</table></td>
</tr>
<tr>
<td height="1"></td>
</tr>
</table>
<table width="778" border="0" align="center" cellpadding="0" cellspacing="0" class="tableborder">
<tr>
<td height="60" align="center" class="tablebody1">网站合作、内容监督、商务咨询:QQ: 9576619
<br>
Copyright ? 2005--2008 中国建站之家版权所有
<br>
未经授权禁止转载、摘编、复制或建立镜像.如有违反,追究法律责任.
<br>
免责申明:中国建站之家(www.jz123.cn)上的所有提供下载的软件和资源<br>均来源于网络,为软件或程序作者提供和网友推荐收集整理而来,仅供学习<br>和研究使用。如有侵犯你的版权,请立即联系我们,本站将在3个工作日内删除。
<br><a href="http://www.miibeian.gov.cn" target="_blank" title="粤ICP备05092265号"><font color=#000000>粤ICP备05092265号
</font><br><script src='http://s6.cnzz.com/stat.php?id=44148&web_id=44148&show=pic' language='JavaScript' charset='gb2312'></script> </td>
<script language="javascript" src="/inc/Std_StranJF.Js"></script>
</table>
</body>
</html>
<span id="naruco_ad_body" style="display:none;">
<script language=javascript src=/adfile/top.js></script>
</span>
<script type="text/javascript">
var naruco_ad = document.getElementById('naruco_ad');
if (naruco_ad != null) {
naruco_ad.innerHTML=naruco_ad_body.innerHTML;
naruco_ad_body.innerHTML="";
}
</script>