文章出處

Studio for ASP.NET Wijmo 控件值得稱贊的一點是它不僅僅單獨為 C1 控件而開發。還可以配合其他控件使用,也正體現了C1控件為提高開發人員工作效率而設計的宗旨。簡單的舉一個例子,例如 C1Pager 就可以和 DataList 配合使用實現分頁功能。

先上效果圖:

Pager 

實現方法:

首先,我們需要設置 DataList 的數據源,在這個例子中我們使用OleDb 數據源創建DataSet。實現這個功能比較重要的一點是一旦生成數據源,我們需要把它同時賦值給C1Pager PagedDataSource  類。需要為每個頁面設置頁碼。以下為實現代碼:

  1: OleDbDataAdapter dadapter;
  2: DataSet dset;
  3: PagedDataSource adsource;
  4: string connstring = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + System.Web.HttpContext.Current.Server.MapPath("~/App_Data/NWIND.mdb") + ";Persist Security Info=False";
  5: int pos;
  6: int pageCount = 0;
  7:   
  8: protected void Page_Load(object sender, EventArgs e)
  9: {
 10:    if (!IsPostBack)
 11:    {
 12:       this.ViewState["vs"] = 0;
 13:    }
 14:    pos = (int)this.ViewState["vs"];
 15:    DataBind();
 16:    C1Pager1.PageCount = pageCount;
 17:    C1Pager1.Mode = C1.Web.Wijmo.Controls.C1Pager.PagerMode.Numeric;
 18: }

 

以下是 DataBind 方法的實現代碼:

  1: public void DataBind()
  2: {
  3:    dadapter = new OleDbDataAdapter("SELECT TOP 20 CompanyName, City, Country FROM Customers", connstring);
  4:    dset = new DataSet();
  5:    adsource = new PagedDataSource();
  6:    dadapter.Fill(dset);
  7:    adsource.DataSource = dset.Tables[0].DefaultView;
  8:    adsource.PageSize = 5;
  9:    adsource.AllowPaging = true;
 10:    adsource.CurrentPageIndex = pos;
 11:    DataList1.DataSource = adsource;
 12:    DataList1.DataBind();
 13:    pageCount = Convert.ToInt32(dset.Tables[0].Rows.Count / adsource.PageSize);
 14: }

 

接下來需要通過 C1Pager 的點擊實現為 DataList 切換數據,實現分頁效果:

  1: protected void C1Pager1_PageIndexChanged(object sender, EventArgs e)
  2: {
  3:    int currPage = C1Pager1.PageIndex;
  4:    pos = (int)this.ViewState["vs"];
  5:    pos += currPage;
  6:    this.ViewState["vs"] = pos;
  7:    DataBind();
  8:    pos = 0;
  9:    this.ViewState["vs"] = 0;
 10: }

 

好了,通過以上步驟我們就結合 C1Pager 和 DataList 實現了完美的真分頁。每次點擊C1Pager頁碼時都會回調后臺的DataBind方法來刷新DataList的數據。以下是示例,趕快下載體驗吧:

VS2010+Framework 4.0 + C# 點擊下載

VS2010+Framework 4.0 + VB.NET 點擊下載

下載 Stduio for ASP.NET Wijmo 產品請進入:

http://www.gcpowertools.com.cn/products/componentone_studio_asp.htm


文章列表




Avast logo

Avast 防毒軟體已檢查此封電子郵件的病毒。
www.avast.com


arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()