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

ASP.NET 2.0 數據教程(四十五):DataList 與 Repeater 數據排序實作(上)

     編輯:關於ASP.NET

返回 ASP.NET 2.0 數據教程目錄

導言

在上一篇 DataList 與 Repeater 數據分頁 教程中,我們學習了如何為 DataList 添加分頁功能。我們在 ProductsBLL 類別中建立了 GetProductsAsPagedDataSource 方法,該方法回傳 PagedDataSource 物件。當繫結至 DataList 或 Repeater 時,它們將僅顯示請求頁面的數據。這項技術的運作原理與 GridView、DetailsView、FormView 內建的分頁功能大同小異。

除了分頁之外,GridView 還提供內建的排序功能,但 DataList 和 Repeater 卻缺乏此特性。然而,只需少量程式碼即可實現排序功能。本章將探討如何在 DataList 和 Repeater 中實作排序,並建立同時支援分頁與排序的 DataList 或 Repeater 控制項。

回顧排序機制

正如我們在 分頁與排序報表數據 中所見,GridView 提供完整的排序支援。每個 GridView 欄位可設定關聯的 SortExpression,指明排序依據的欄位。當 AllowSorting 屬性設為 true 時,擁有 SortExpression 的欄位標題將呈現為 LinkButton。點擊標題觸發回傳,數據依據該欄位的 SortExpression 進行排序。此外,SortDirection 屬性指示升冪或降冪排序。

當 GridView 繫結至數據源控制項時,會將 SortExpression 和 SortDirection 傳遞給數據源控制項。數據源控制項取得數據並依據這兩個參數排序後,再回傳給 GridView 顯示。

在 DataList 或 Repeater 中實作排序

要在 DataList 或 Repeater 中實現同樣功能,我們需要完成三項工作:

  1. 建立排序介面(如可點擊的標題連結)
  2. 記錄排序欄位與方向(升冪/降冪)
  3. 指示 ObjectDataSource 依據特定欄位排序

本教程將在第 3 步與第 4 步處理上述三個步驟,隨後探討如何讓 DataList 或 Repeater 同時支援分頁與排序兩大功能。

排序示意圖
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved