ASP.NET中gridview、datalist、repeater、FormView、DetailsView的區別詳解 轉

來源:互聯網
上載者:User
GridView 控制項用於顯示表中的資料。通過使用 GridView 控制項,您可以顯示、編輯、刪除、排序和翻閱多種不同的資料來源(包括資料庫、XML 檔案和公開資料的業務對象)中的表格式資料。顯示表格式資料是軟體開發中的一個週期性任務。ASP.NET 提供了許多工具來在網格中顯示表格式資料,例如 GridView 控制項。通過使用 GridView 控制項,您可以顯示、編輯和刪除多種不同的資料來源(例如資料庫、XML 檔案和公開資料的業務對象)中的資料。可以使用 GridView 來完成以下操作:通過資料來源控制項自動綁定和顯示資料。通過資料來源控制項對資料進行選擇、排序、分頁、編輯和刪除。另外,還可以通過以下方式自訂 GridView 控制項的外觀和行為:指定自訂欄和樣式。利用模板建立自訂使用者介面 (UI) 元素。通過處理事件將自己的代碼添加到 GridView 控制項的功能中。1.1 使用 GridView 控制項進行資料繫結GridView 控制項提供了兩個用於綁定到資料的選項:使用 DataSourceID 屬性進行資料繫結,此選項讓您能夠將 GridView 控制項綁定到資料來源控制項。建議使用此方法,因為它允許 GridView 控制項利用資料來源控制項的功能並提供了內建的排序、分頁和更新功能。使用 DataSource 屬性進行資料繫結,此選項使您能夠綁定到包括 ADO.NET 資料集和資料讀取器在內的各種對象。此方法需要為所有附加功能(如排序、分頁和更新)編寫代碼。當使用 DataSourceID 屬性綁定到資料來源時,GridView 控制項支援雙向資料繫結。除可以使該控制項顯示返回的資料之外,還可以使它自動支援對綁定資料的更新和刪除操作。1.2 在 GridView 控制項中設定資料顯示格式     可以指定 GridView 控制項的行的布局、顏色、字型和對齊。可以指定行中包含的文本和資料的顯示。另外,可以指定將資料行顯示為項目、交替項、選擇的項還是編輯模式項。GridView 控制項還允許指定列的格式。1.3 使用 GridView 控制項編輯和刪除資料預設情況下,GridView 控制項在唯讀模式下顯示資料。但是,該控制項還支援一種編輯模式,在該模式下控制項顯示一個包含可編輯控制項(如 TextBox 或 CheckBox 控制項)的行。您還可以對 GridView 控制項進行配置以顯示一個 Delete 按鈕,使用者可單擊該按鈕來刪除資料來源中相應的記錄。GridView 控制項可對其關聯資料來源自動執行編輯和刪除操作,使您無需編寫代碼即可啟用編輯表現方式。或者,也可以以編程方式控制編輯和刪除資料的過程(如在 GridView 控制項綁定到唯讀資料來源控制項的情況下)。您可以使用模板對當某個行處於編輯模式時使用的輸入控制項進行自訂。1.4 GridView 排序功能GridView 控制項支援在不需要任何編程的情況下通過單個列排序。通過使用排序事件以及提供排序運算式,您可以進一步自訂 GridView 控制項的排序功能。1.5 GridView 分頁功能GridView 控制項提供一種簡單的分頁功能。可以通過使用 GridView 控制項的 PagerTemplate 屬性來自訂 GridView 控制項的分頁功能。適用情境GridView 控制項一般適用於以表的形式顯示規則的二維關係資料。例如用於顯示網站下所有使用者的列表。2. DataList 控制項     DataList Web 伺服器控制項以可自訂的格式顯示資料庫行的資訊。顯示資料的格式在建立的模板中定義。可以為項、交替項、選定項和編輯項建立模板。標題、腳註和分隔字元模板也用於自訂 DataList 的整體外觀。通過在模板中包括 Web 伺服器控制項,可將清單項目串連到代碼,這些代碼使使用者得以在顯示、選擇和編輯模式之間進行切換。    DataList 與GridView不同,必須通過自訂的template 來顯示資料項目。DataList 與 GridView相比不支援排序,分頁功能。適用情境    DataList 一般適用於顯示“單列多行”關係的資料,例如用於顯示產品列表,每一個ListItem顯示一件產品的資訊,你可以為ListItem 定義自己需要的格式。3. 重複器控制項     Repeater Web 伺服器控制項是一個容器控制項,它使您可以從頁的任何可用資料中建立出自訂欄表。重複器控制項不具備內建的呈現功能,這表示使用者必須通過建立模板為 重複器控制項提供布局。當該頁運行時,重複器控制項依次通過資料來源中的記錄,並為每個記錄呈現一個項。    重複器控制項與上述2 個控制項相比顯得最為單薄,Repeater 一般用於唯讀資料,對資料呈現的列表不具備編輯,排序,分頁等功能。適用情境    功能非常單薄,它使用資料來源返回的一組記錄呈現唯讀列表。4.DetailsView 控制項DetailsView 控制項一次呈現一條表格形式的記錄,並提供翻閱多條記錄以及插入、更新和刪除記錄的功能。DetailsView 控制項通常用在主/詳細資料方案中,在這種方案中,主控制項(如 GridView 控制項)中的所選記錄決定了 DetailsView 控制項顯示的記錄。5.FormView 控制項FormView 控制項與 DetailsView 控制項類似,它一次呈現資料來源中的一條記錄,並提供翻閱多條記錄以及插入、更新和刪除記錄的功能。不過,FormView 控制項與 DetailsView 控制項之間的差別在於:DetailsView 控制項使用基於表格的布局,在這種布局中,資料記錄的每個欄位都顯示為控制項中的一行。而 FormView 控制項則不指定用於顯示記錄的預定義布局。實際上,您將建立包含控制項的模板,以顯示記錄中的各個欄位。該模板包含用於設定表單布局的格式、控制項和綁定運算式。 

GridView 控制項用於顯示表中的資料。通過使用 GridView 控制項,您可以顯示、編輯、刪除、排序和翻閱多種不同的資料來源(包括資料庫、XML 檔案和公開資料的業務對象)中的表格式資料。
顯示表格式資料是軟體開發中的一個週期性任務。ASP.NET 提供了許多工具來在網格中顯示表格式資料,例如 GridView 控制項。通過使用 GridView 控制項,您可以顯示、編輯和刪除多種不同的資料來源(例如資料庫、XML 檔案和公開資料的業務對象)中的資料。
可以使用 GridView 來完成以下操作:
通過資料來源控制項自動綁定和顯示資料。
通過資料來源控制項對資料進行選擇、排序、分頁、編輯和刪除。
另外,還可以通過以下方式自訂 GridView 控制項的外觀和行為:
指定自訂欄和樣式。
利用模板建立自訂使用者介面 (UI) 元素。
通過處理事件將自己的代碼添加到 GridView 控制項的功能中。
1.1 使用 GridView 控制項進行資料繫結
GridView 控制項提供了兩個用於綁定到資料的選項:
使用 DataSourceID 屬性進行資料繫結,此選項讓您能夠將 GridView 控制項綁定到資料來源控制項。建議使用此方法,因為它允許 GridView 控制項利用資料來源控制項的功能並提供了內建的排序、分頁和更新功能。
使用 DataSource 屬性進行資料繫結,此選項使您能夠綁定到包括 ADO.NET 資料集和資料讀取器在內的各種對象。此方法需要為所有附加功能(如排序、分頁和更新)編寫代碼。
當使用 DataSourceID 屬性綁定到資料來源時,GridView 控制項支援雙向資料繫結。除可以使該控制項顯示返回的資料之外,還可以使它自動支援對綁定資料的更新和刪除操作。
1.2 在 GridView 控制項中設定資料顯示格式
     可以指定 GridView 控制項的行的布局、顏色、字型和對齊。可以指定行中包含的文本和資料的顯示。另外,可以指定將資料行顯示為項目、交替項、選擇的項還是編輯模式項。GridView 控制項還允許指定列的格式。
1.3 使用 GridView 控制項編輯和刪除資料
預設情況下,GridView 控制項在唯讀模式下顯示資料。但是,該控制項還支援一種編輯模式,在該模式下控制項顯示一個包含可編輯控制項(如 TextBox 或 CheckBox 控制項)的行。您還可以對 GridView 控制項進行配置以顯示一個 Delete 按鈕,使用者可單擊該按鈕來刪除資料來源中相應的記錄。
GridView 控制項可對其關聯資料來源自動執行編輯和刪除操作,使您無需編寫代碼即可啟用編輯表現方式。或者,也可以以編程方式控制編輯和刪除資料的過程(如在 GridView 控制項綁定到唯讀資料來源控制項的情況下)。
您可以使用模板對當某個行處於編輯模式時使用的輸入控制項進行自訂。
1.4 GridView 排序功能
GridView 控制項支援在不需要任何編程的情況下通過單個列排序。通過使用排序事件以及提供排序運算式,您可以進一步自訂 GridView 控制項的排序功能。
1.5 GridView 分頁功能
GridView 控制項提供一種簡單的分頁功能。可以通過使用 GridView 控制項的 PagerTemplate 屬性來自訂 GridView 控制項的分頁功能。
適用情境
GridView 控制項一般適用於以表的形式顯示規則的二維關係資料。例如用於顯示網站下所有使用者的列表。
2. DataList 控制項
     DataList Web 伺服器控制項以可自訂的格式顯示資料庫行的資訊。顯示資料的格式在建立的模板中定義。可以為項、交替項、選定項和編輯項建立模板。標題、腳註和分隔字元模板也用於自訂 DataList 的整體外觀。通過在模板中包括 Web 伺服器控制項,可將清單項目串連到代碼,這些代碼使使用者得以在顯示、選擇和編輯模式之間進行切換。
    DataList 與GridView不同,必須通過自訂的template 來顯示資料項目。DataList 與 GridView相比不支援排序,分頁功能。
適用情境
    DataList 一般適用於顯示“單列多行”關係的資料,例如用於顯示產品列表,每一個ListItem顯示一件產品的資訊,你可以為ListItem 定義自己需要的格式。
3. 重複器控制項
     Repeater Web 伺服器控制項是一個容器控制項,它使您可以從頁的任何可用資料中建立出自訂欄表。重複器控制項不具備內建的呈現功能,這表示使用者必須通過建立模板為 重複器控制項提供布局。當該頁運行時,重複器控制項依次通過資料來源中的記錄,並為每個記錄呈現一個項。
    重複器控制項與上述2 個控制項相比顯得最為單薄,Repeater 一般用於唯讀資料,對資料呈現的列表不具備編輯,排序,分頁等功能。
適用情境
    功能非常單薄,它使用資料來源返回的一組記錄呈現唯讀列表。
4.DetailsView 控制項

 

DetailsView 控制項一次呈現一條表格形式的記錄,並提供翻閱多條記錄以及插入、更新和刪除記錄的功能。DetailsView 控制項通常用在主/詳細資料方案中,在這種方案中,主控制項(如 GridView 控制項)中的所選記錄決定了 DetailsView 控制項顯示的記錄。
5.FormView 控制項

FormView 控制項與 DetailsView 控制項類似,它一次呈現資料來源中的一條記錄,並提供翻閱多條記錄以及插入、更新和刪除記錄的功能。不過,FormView 控制項與 DetailsView 控制項之間的差別在於:DetailsView 控制項使用基於表格的布局,在這種布局中,資料記錄的每個欄位都顯示為控制項中的一行。而 FormView 控制項則不指定用於顯示記錄的預定義布局。實際上,您將建立包含控制項的模板,以顯示記錄中的各個欄位。該模板包含用於設定表單布局的格式、控制項和綁定運算式。 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.