aspx.cs
private void Page_Load(object sender, System.EventArgs e)
{
//頁面初試化時進行數據綁定
if(!IsPostBack)
DataListDataBind();
}
private void DataListDataBind()
{
//定義數據連接對象,其中數據庫連接字符串是在Web.Config文件中定義的
SqlConnection conn = new SqlConnection(ConfigurationSettings.AppSettings["ConnectionSqlServer"].ToString());
//創建數據適配器對象
SqlDataAdapter da = new SqlDataAdapter("select EmployeeID,LastName,FirstName,Title,TitleOfCourtesy from Employees",conn);
//創建DataSet對象
DataSet ds = new DataSet();
try
{
//填充數據集
da.Fill(ds,"testTable");
//創建分頁類
PagedDataSource objPage = new PagedDataSource();
//設置數據源
objPage.DataSource = ds.Tables["testTable"].DefaultView;
//允許分頁
objPage.AllowPaging = true;
//設置每頁顯示的項數
objPage.PageSize = 5;
//定義變量用來保存當前頁索引
int CurPage;
//判斷是否具有頁面跳轉的請求
if (Request.QueryString["Page"] != null)
CurPage=Convert.ToInt32(Request.QueryString["Page"]);
else
CurPage=1;
//設置當前頁的索引
objPage.CurrentPageIndex = CurPage-1;
//顯示狀態信息
lblCurPage.Text = "當前頁:第" + CurPage.ToString()+"頁";
//如果當前頁面不是首頁
if (!objPage.IsFirstPage)
//定義"上一頁"超級鏈接的URL爲:當前執行頁面的虛擬路徑,並傳遞下一頁面的索引值
lnkPrev.NavigateUrl=Request.CurrentExecutionFilePath + "?Page=" + Convert.ToString(CurPage-1);
//如果當前頁面不是最後一頁
if (!objPage.IsLastPage)
//定義"下一頁"超級鏈接的URL爲:當前執行頁面的虛擬路徑,並傳遞下一頁面的索引值
lnkNext.NavigateUrl=Request.CurrentExecutionFilePath+ "?Page=" + Convert.ToString(CurPage+1);
//進行數據綁定
dlPager.DataSource = objPage;
dlPager.DataBind();
}
catch(Exception error)
{
//輸出異常信息
Response.Write(error.ToString());
}
}
aspx
<asp:DataList id="dlPager" runat="server" Height="136px" DataKeyField="EmployeeID" Width="440px">
<HeaderTemplate>
人員信息
</HeaderTemplate>
<FooterTemplate>
<hr color="red">
</FooterTemplate>
<ItemTemplate>
<%#DataBinder.Eval(Container.DataItem,"LastName")%>
<%#DataBinder.Eval(Container.DataItem,"FirstName")%>
<%#DataBinder.Eval(Container.DataItem,"Title")%>
<%#DataBinder.Eval(Container.DataItem,"TitleOfCourtesy")%>
</ItemTemplate>
</asp:DataList></TD>
</TR>
<TR>
<TD>
<asp:label id="lblCurPage" runat="server"></asp:label>
<asp:HyperLink id="lnkPrev" runat="server">上一頁</asp:HyperLink>
<asp:HyperLink id="lnkNext" runat="server">下一頁</asp:HyperLink></TD>