成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

DataList控件入門介紹

開發 后端
本文從DataList控件的呈現方式開始介紹,同時介紹了其與DataGrid控件在結構和性能上的不同,為相當容易理解的DataList控件入門。

DataList控件入門:呈現方式

DataList控件和DataGrid控件類似,也是在ASP.NET中用于控制顯示數據的Web控件。要學習DataGrid控件,首先需要了解,DataGrid 將呈現為 HTML

< table>

,每一個

DataSource

記錄作為一個表行(

< tr>

),每一個記錄字段作為一個表列(

< td>

)。 有時,您可能想更多地控制數據的顯示。 例如,您可能想把數據顯示在 HTML

< table>

中,但不是每行顯示一條記錄,而是每行顯示五條記錄。 或者,您根本不想把數據顯示在

< table>

標記中,而是想把每個元素顯示在一個

< span>

標記中。

DataList控件入門:與DataGrid之不同

DataList 放棄了 DataGrid 所采用的“列”概念。 相反,DataList 的顯示是通過模板 定義的。 利用模板,開發人員可以指定混合的 HTML 語法和數據綁定語法。 HTML 語法是標準的 HTML 標記;數據綁定語法是使用

< %#

%>

標記分隔的,用于從

DataSource

的記錄中產生用于構造給定 DataList 項的內容。 例如,下面的 ItemTemplate 將顯示

DataSource

的字段

CompanyName:

  1. < asp:DataList runat="server" id="myDataList"> 
  2.   < ItemTemplate> 
  3.     < %# DataBinder.Eval(Container.DataItem, "CompanyName") %> 
  4.   < /ItemTemplate> 
  5. < /asp:DataList> 

除了數據綁定語法,模板也可以包含 HTML 標記。 通過更新上面的模板,可以使

CompanyName

字段以粗體顯示,而使

ContactName

字段以非粗體顯示在

CompanyName

字段的下面:

  1. < asp:DataList runat="server" id="myDataList"> 
  2.   < ItemTemplate> 
  3.     < b>< %# DataBinder.Eval(Container.DataItem, "CompanyName") %>< /b> 
  4.     < br /> 
  5.     < %# DataBinder.Eval(Container.DataItem, "ContactName") %> 
  6.   < /ItemTemplate> 
  7. < /asp:DataList> 

對于 DataList 的 DataSource 中的每一條記錄,都要計算 ItemTemplate 的數據綁定語法。 數據綁定語法的輸出與 HTML 標記一起指定了為 DataList 項呈現的 HTML。 DataList 還支持其他六個模板,包括 ItemTemplate在內共有如下七個:

AlternatingItemTemplate

EditItemTemplate

FooterTemplate

HeaderTemplate

ItemTemplate

SelectedItemTemplate

SeparatorTemplate

注意,DataGrid 的 TemplateColumn 僅支持四個模板: ItemTemplate、HeaderTemplate、FooterTemplate 和 EditItemTemplate。

默認情況下,DataList 將每一項都顯示為 HTML

< table>

中的一行。 但是,通過設置

RepeatColumns

屬性,您可以指定表的每一行顯示多少個 DataList 項。 除了可以指定 HTML

< table>

的每一行顯示多少個 DataList 項之外,還可以指定 DataList 的內容應該使用

< span>

標記顯示,而不是使用

< table>

標記。 DataList 的

RepeatLayout

屬性可以設置為 Table 或 Flow,表示 DataList 中的數據呈現在 HTML

< table>

中還是

< span>

標記中。

利用模板以及

RepeatColumns

RepeatLayout

屬性,很明顯 DataList 比 DataGrid 允許對呈現的 HTML 標記進行更多的自定義。 這種增強了的自定義使得使用 DataList 能夠產生更為友好的數據顯示,因為 DataGrid 的“每一條

DataSource

記錄占用一個表行的單 HTML

< table>

”模型不可能總是用于顯示信息的***選擇。 但是,只研究比 DataGrid 改進了的自定義并不足以確定 DataList 的可用性;我們還必須比較 DataGrid 和 DataList 的排序、分頁和編輯功能。

使用 EditItemIndex 模板以及 EditCommand、UpdateCommand 和 CancelCommand 事件,DataList 可以支持內聯編輯。 但是,用 DataList 添加這樣的功能比用 DataGrid 花費的開發時間要長。 開發時間的差異是由于下面兩個原因:

通過 EditCommandColumn 列類型即可在 DataGrid 中創建的編輯/更新/取消按鈕,必須手動添加到 DataList 中,以及

DataGrid BoundColumn 列類型自動使用 TextBox Web 控件作為編輯接口,而使用 DataList 時必須通過 EditItemTemplate 為要編輯的項顯式指定的編輯接口。

雖然用 DataList 進行內聯編輯不是很困難,但是 DataList 的數據排序、分頁和編輯卻很困難。 雖然一些靈活的編碼肯定能完成這樣的功能,但是向 DataList 中添加這樣的功能將花費相當多的開發時間。 因此,如果最終用戶能對數據進行排序和分頁是一個必需要求的話,那么***選擇 DataGrid 而不選擇 DataList。

DataList控件入門:性能比較

DataList 的性能比 DataGrid 的性能好,當 DataList 位于 Web 窗體內時這一點更明顯。 圖 2 顯示了 Web Application Stress Tool 在 DataList 上的測試結果。

DataList 的每秒請求數 

圖 2: DataList 的每秒請求數

正如圖 2 中的結果顯示的那樣,當 DataList 放置在 Web 窗體內時(因此導致該 Web 控件生成它的 ViewState),該 Web 控件要遠勝于 DataGrid。

【編輯推薦】

  1. DataGrid Web控件運作機制探秘
  2. 小議ASP.NET數據Web控件之間的相似性
  3. 從傳統ASP到ASP.NET的轉變:了解控件
  4. ASP.NET調試API之Log4net使用指南
  5. 使用ASP.NET模板生成HTML靜態頁面的五種方案
責任編輯:yangsai 來源: MSDN
相關推薦

2013-06-24 13:38:34

HTML5 DataList

2009-07-28 13:22:13

DataList和ReASP.NET

2009-07-02 10:27:20

JSP技術JSP入門

2009-06-22 14:13:08

JSF入門

2009-08-05 15:57:03

ASP.NET控件ID

2009-08-21 17:55:52

C#復合控件

2009-08-24 18:21:23

C# ListView

2009-08-03 18:15:05

ASP.NET數據綁定

2009-08-03 15:08:00

SqlDataSour

2009-06-25 16:52:34

2010-01-26 10:27:43

C++語言

2009-06-12 09:07:01

EJB入門

2009-07-30 13:21:17

Scala入門Hello World

2009-09-24 15:02:26

Cisco認證

2018-01-08 08:50:05

Linux內核系統程序

2009-12-22 15:08:46

ADO控件

2009-12-30 16:43:47

Silverlight

2009-08-04 15:58:06

ASP.NET動態控件

2009-10-12 15:02:51

VB.NET動態控件

2009-12-30 13:59:58

Silverlight
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日韩成人高清在线 | 久久人体视频 | 亚洲一区二区三区高清 | 国产精品一区二区av | 国产精品免费一区二区三区四区 | 97人人澡人人爽91综合色 | 国产精品乱码一区二区三区 | 亚洲综合婷婷 | 欧美激情国产日韩精品一区18 | 97成人在线 | 国产视频二区 | 国产午夜精品一区二区三区嫩草 | 国产精品久久久久免费 | 91视频在线看 | 亚洲www | 午夜小视频在线播放 | 午夜小视频免费观看 | 日韩视频在线播放 | 亚洲a视频| 九九热精品在线 | 国产视频精品免费 | 韩日有码| 91亚洲国产 | 91久久国产综合久久 | 国产午夜精品一区二区三区四区 | 亚洲一区二区三区免费 | 北条麻妃一区二区三区在线视频 | 国产电影一区二区在线观看 | 亚洲天堂久久 | 日产精品久久久一区二区福利 | 免费一级淫片aaa片毛片a级 | 激情网五月天 | 精品亚洲一区二区三区四区五区高 | 九九久久精品视频 | 国产一区久久久 | 免费人成在线观看网站 | 日韩中文字幕第一页 | 综合色播| 国产美女网站 | 色婷婷av777| 天天干狠狠干 |