這裡就不詳細介紹PageDataSource,大家只要清楚它是內置在GridVIEw裡的一個類就好了
在ASPX頁面上加入三個Label 和兩個HyperLink

public partial class Site_SoftDownLoad : System.Web.UI.Page
...{
int PageSize, RecordCount, PageCount, CurrentPage; //定義頁面條數、記錄總數、頁面總數、當前頁面
protected void Page_Load(object sender, EventArgs e)
...{
if (!IsPostBack)
...{
DataTable dt = new FCD_DownLoadTool().GetTableDownLoadTool(); //定義一個DataTable接受你要的數據
PagedDataSource objPds = new PagedDataSource(); //實例化PagedDataSource 
objPds.AllowPaging = true; //啟動分頁屬性
objPds.PageSize = 10; //每頁顯示10條
objPds.DataSource = dt.DefaultVIEw; //將你獲取到的數據表裝入PagedDataSource
int CurPage; //定義頁碼
if (Request.QueryString["Page"] != null)
CurPage = Convert.ToInt32(Request.QueryString["Page"]); //如果點按鈕(上一頁、下一頁)傳遞值不為空則綁定頁
else
CurPage = 1; 為空則為第一頁
objPds.CurrentPageIndex = CurPage - 1; //PagedDataSource 頁索引從0開始,所以顯示的數據頁為當前頁碼-1

if (!objPds.IsFirstPage) //如果提交的不是第一頁
...{
HyperLink1.Visible = true; //上一頁按鈕顯示
//上一頁導航傳遞值-1
HyperLink1.NavigateUrl = Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(CurPage - 1);
}
else
...{
HyperLink1.Visible = false; //上一頁按鈕不顯示
}
if (!objPds.IsLastPage) //最後一頁
HyperLink2.Visible = true; //下一頁不顯示
HyperLink2.NavigateUrl = Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(CurPage + 1);
}
else
...{
HyperLink2.Visible = false;
}
DataList1.DataSource = objPds; //DataList數據綁定
DataList1.DataBind();
RecordCount = objPds.DataSourceCount; //統計記錄條數
Label1.Text = RecordCount.ToString();
Label2.Text = objPds.PageCount.ToString(); //統計頁面數
this.Label3.Text = CurPage.ToString(); //顯示當前頁
}
}