首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> .NET 網頁程式設計 >> ASP.NET 基礎 >> 關於ASP.NET

ASP.NET SqlPager 分頁控制項使用完整指南

     編輯:關於ASP.NET

SqlPager 是整合於 Winson.Framework 的靈活分頁控制項,基於 PagedDataSource,支援 AJAX/PostBack、多種分頁樣式、快取/非快取模式、多種資料來源控制項繫結。

主要功能

  • AJAX 分頁與傳統 PostBack 切換。
  • 內建數種分頁按鈕樣式,支援自訂樣式。
  • 一次性載入全量資料(快取模式)或每頁查詢(非快取模式)。
  • 可繫結 GridView、Repeater、DataList、ListControl 等。
  • 支援頁面內 SQL 查詢或後端自訂資料源。
  • 可指定排序欄位。
  • 完全開源,方便擴充。

基本使用步驟

1. 註冊控制項

<%@ Register Assembly="Winson.WControls" Namespace="Winson.SqlPager" TagPrefix="SqlPager" %>

2. 放置控制項並設定屬性

<SqlPager:SqlPager ID="SqlPager1" runat="server"
    ControlToPaginate="GridView1"
    Width="700"
    ItemsPerPage="4"
    BorderStyle="Dotted"
    BackColor="#ffffff"
    PagerStyle="CustomAndNumeric"
    FirstButton="第一頁"
    PrevButton="上一頁"
    NextButton="下一頁"
    LastButton="最後一頁"
    PagingMode="Cached">
</SqlPager:SqlPager>

關鍵屬性說明

後端繫結範例 (NonCached 模式)

protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
        SqlPager1.PagingMode = PagingMode.NonCached;
        SqlPager1.DataBind += (s, args) =>
        {
            // args.StartRowIndex, args.MaximumRows 已由控制項計算
            string sql = "SELECT * FROM Products ORDER BY ProductID";
            DataTable dt = DbHelper.GetPagedData(sql, args.StartRowIndex, args.MaximumRows);
            GridView1.DataSource = dt;
            GridView1.DataBind();
            args.TotalRowCount = DbHelper.GetTotalCount("Products"); // 必須回傳總筆數
        };
    }
}

進階:自訂分頁樣式

設定 PagerStyle="Custom" 並提供 FirstButtonTemplate、NumericButtonTemplate 等模板,完全掌控 HTML 輸出。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved
屬性說明
ControlToPaginate要分頁的資料來源控制項 ID(如 GridView1)
PagerStyle分頁按鈕樣式枚舉,同時決定是否啟用 AJAX
PagingModeCached:一次讀全量再分頁;NonCached:只讀當頁資料。搭配 Tab 控制項時必須用 Cached
FirstButton/PrevButton/NextButton/LastButton自訂樣式時的按鈕文字
ItemsPerPage每頁筆數