程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> ASP.NET >> 關於ASP.NET >> ASP.NET數據列表控件的分頁總結(三)Asp.Net可定制分頁用戶控件

ASP.NET數據列表控件的分頁總結(三)Asp.Net可定制分頁用戶控件

編輯:關於ASP.NET

前一篇文章是采用存儲過程來進行分頁的,但是存在缺陷,沒有代碼重用,針對不同的表或者不同的視圖都需要去編寫存儲過程,這樣很麻煩,代碼的重用性很差。本文將通過一個用戶控件來實現數據分頁的頁面層以達到代碼重用的目的。

分頁是借助用戶自定義控件來實現,在這裡主要有以下兩種方法來實現:

(一).吳旗娃的AspNetPager組件(推薦使用)

首先,下載該dll文件。

在工具箱中,鼠標右鍵,“選擇項”,添加剛下載的dll文件。

然後,將會在工具箱中看到一個AspNetPager分頁控件,拖到頁面,再拖一個數據顯示控件,Gridview或Repeater。

最後,寫後台代碼如下:

using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;
  
public partial class _Default : System.Web.UI.Page
{
  protected void Page_Load(object sender, EventArgs e)
  {
    if (!IsPostBack)
    {
      BindData();
    }
  }
  
  //獲取並綁定數據
  public void BindData()
  {
    //連接數據庫
    string strCon = "server=.;database=Northwind;uid=sa;pwd=";
    SqlConnection con = new SqlConnection(strCon);
    string sql = "select * from Customers";
    SqlDataAdapter sda = new SqlDataAdapter(sql,con);
    DataSet ds = new DataSet();
    sda.Fill(ds);
  
   //AspNetPager分頁控件如何用
   DataView dv = ds.Tables[0].DefaultView;
   //使用PagedDataSource類
   PagedDataSource pds = new PagedDataSource();
   AspNetPager1.RecordCount = dv.Count;//取得記錄總數
   pds.DataSource = dv;
   pds.AllowPaging = true;
   //取得當前頁的索引
   pds.CurrentPageIndex = AspNetPager1.CurrentPageIndex - 1;
   pds.PageSize = AspNetPager1.PageSize;//取得每頁顯示的記錄數
   GridView1.DataSource = pds; //指定數據源
   GridView1.DataBind();
  }
  
  protected void AspNetPager1_PageChanged(object sender, EventArgs e)
  {
    BindData();
  }
}

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved