1.GridView控制項
這個控制項可以以表格形式(table標籤)顯示、編輯和刪除多種不同的資料來源(例如資料庫、XML檔案以及集合等)中的資料。GridView控制項功能非常強大,如果需要,編程者可以不用編寫任何代碼,通過VS 2008拖拽,並從屬性面板設定屬性即可,還可以完成如分頁、排序、外觀設定等功能。雖然功能非常齊全,但程式效能將受到影響,在頁面中最好不要過多地使用該控制項。當然,如果需要自訂格式顯示各種資料,GridView控制項也提供了用於編輯格式的模板功能。
2.DataList控制項
該控制項可以以自訂的格式(不一定用table標籤)顯示各種資料來源的欄位,其顯示資料的格式在建立的模板中定義,可以為項、交替項、選定項和編輯項建立模板。DataList控制項也可以使用標題、腳註和分隔字元模板自訂整體外觀,還可以一行顯示多個資料行。雖然DataList控制項擁有很大的靈活性,但其本身不支援資料分頁,編程者需要通過自己編寫方法完成分頁的功能。
3.DetailsView控制項
DetailsView控制項以表格形式(table標籤)一次僅顯示資料來源的單條記錄,並且table標籤下的每行(tr標籤)表示記錄中的一個欄位。這個控制項同樣支援資料的編輯、插入和刪除操作,並可以輕鬆地設定分頁功能,但是DetailsView控制項本身不支援資料排序。
4.FormView控制項
與DetailsView控制項類似,FormView控制項僅可顯示資料來源中的單條記錄。和DetailsView控制項不同,DetailsView控制項採用表格版面配置(table標籤),記錄的每個欄位都各自顯示為一行。而FormView控制項沒有用於顯示記錄的預置布局,編程者需要自己建立子項目範本,編寫各種用於顯示記錄中的欄位的控制項以及布局用的其他HTML標籤。和DetailsView控制項一樣,FormView控制項可以輕鬆地啟用分頁功能。如果僅僅顯示單條記錄,FormView控制項是比較推薦的方法,因為可以在高效開發的同時自訂資料顯示的格式。
5.Repeater控制項
在ListView控制項出現之前,這是筆者比較常用的控制項,因為重複器控制項是一個資料繫結容器控制項,用於產生各個子項的列表,這些子項的顯示方式可以完全由編程者自己編寫。當控制項所在頁面運行時,該控制項根據資料來源中資料行的數量重複模板中所定義的資料顯示格式,編程者可以完全把握資料的顯示布局,如使用div元素、ul元素等。
注意:Repeater控制項僅提供重複模板內容功能,不提供如分頁、排序、編輯等功能,這些功能需要編程者自己編寫方法實現。
6.ListView控制項
ListView控制項會按照編程者編寫的模板格式顯示資料。與DataList和Repeater控制項相似,ListView控制項也適用於任何具有重複結構的資料。不過,ListView控制項提供了使用者編輯、插入和刪除資料等資料操作功能,還提供了對資料進行排序和分頁的功能,只需要在VS 2008中直接設定即可,不需要編寫代碼,這點非常類似於GridView控制項。可以說,ListView既有Repeater控制項的開放式模板,又具有GridView控制項的編輯特性。
說明:ListView控制項是ASP.NET 3.5新增的控制項,其分頁功能需要配合DataPager控制項實現。