偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

深入研究Repeater控件:最大的靈活性

開發(fā) 后端
本文介紹ASP.NET數(shù)據(jù)Web控件中的Repeater控件。Repeater控件在三個ASP.NET數(shù)據(jù)Web控件中提供了最大的靈活性:它呈現(xiàn)的HTML標(biāo)記是可以指定的。

Repeater控件在三個ASP.NET數(shù)據(jù)Web控件中提供了***的靈活性:它呈現(xiàn)的HTML標(biāo)記是可以指定的。DataGrid 或 DataList 會在預(yù)設(shè)的 HTML 標(biāo)記中自動包含開發(fā)人員指定的內(nèi)容。與它們不同的是,Repeater 在呈現(xiàn)的時候?qū)栏裆芍付ǖ?HTML 標(biāo)記。 因此,如果不想用 HTML

< table>

或者一系列

< span>

標(biāo)記顯示數(shù)據(jù),而希望以其他方式顯示數(shù)據(jù),就必須使用 Repeater 控件。

就像 DataList 一樣,使用Repeater控件時要用模板指定標(biāo)記。 Repeater 包含下列五個模板:

AlternatingItemTemplate

FooterTemplate

HeaderTemplate

ItemTemplate

SeparatorTemplate

HeaderTemplate 和 FooterTemplate 指定出現(xiàn)在綁定到 Repeater 的數(shù)據(jù)之前和之后的 HTML 標(biāo)記。AlternatingItemTemplate 和 ItemTemplate 指定用于呈現(xiàn) Repeater 的

DataSource

中的每條記錄的 HTML 標(biāo)記和數(shù)據(jù)綁定語法。 例如,假設(shè)您要把包含雇員信息的數(shù)據(jù)集綁定到 Repeater,該數(shù)據(jù)集的其中一個字段是

EmployeeName

。 如果要在 Web 頁上以無序列表的形式顯示雇員列表,則可以使用如下 Repeater 語法:

  1. < asp:Repeater runat="server" id="rptEmployees"> 
  2.   < HeaderTemplate> 
  3.     < ul> 
  4.   < /HeaderTemplate> 
  5.   < ItemTemplate> 
  6.     < li>< %# DataBinder.Eval(Container.DataItem, "EmployeeName") %>< /li> 
  7.   < /ItemTemplate> 
  8.   < FooterTemplate> 
  9.     < /ul> 
  10.   < /FooterTemplate> 
  11. < /asp:Repeater> 

與 DataGrid 和 DataList 不同,Repeater 類不是從

WebControl

類派生的。 因此,Repeater 缺少 DataGrid 和 DataList 二者共有的樣式屬性。 這一點歸結(jié)起來無非是說,如果想對 Repeater 中所顯示數(shù)據(jù)進行格式設(shè)置,則必須在 HTML 標(biāo)記中進行這樣的操作。 例如,在上面的例子中,如果想用粗體顯示雇員的姓名,則必須更改 ItemTemplate 以包含 HTML 粗體標(biāo)記,就像下面這樣:

  1. < ItemTemplate> 
  2.   < li>< b>< %# DataBinder.Eval(Container.DataItem, "EmployeeName")  
  3.     %>< /b>< /li> 
  4. < /ItemTemplate> 

然而對于 DataGrid 或 DataList,通過把控件的

ItemStyle-Font-Bold

屬性設(shè)置為 True,就能用粗體顯示文本了。

Repeater控件 缺少樣式屬性會大大增加開發(fā)的時間指標(biāo)。 例如,假設(shè)決定使用 Repeater 顯示數(shù)據(jù),這些數(shù)據(jù)需要以粗體、中間對齊且?guī)в刑囟ū尘吧奶囟ㄗ煮w顯示。 所有這些都要用幾個 HTML 標(biāo)記指定,這些標(biāo)記很快就會使 Repeater 的模板變得凌亂不堪。 這種凌亂會使以后對外觀進行更改變得困難得多,尤其是當(dāng)其他人對該項目進行操作時,則不得不查看大量 HTML 語法。 將這一點與為 DataGrid 或 DataList 指定格式進行比較。 對于這兩個控件中的任何一個,都可以通過指定 DataGrid 或 DataList 的樣式屬性來使模板免于凌亂。 此外,可以用一些工具來自動設(shè)置 DataGrid 和 DataList 的樣式屬性,例如 Microsoft Visual Studio .NET 或 ASP.NET Web Matrix。

除了延長開發(fā)時間之外,Repeater 還缺少有助于支持分頁、編輯或數(shù)據(jù)編輯的內(nèi)置功能。 由于缺少這些功能支持,Repeater 在可用性的評定中得分很低。 當(dāng)然,如果 所有您感興趣的只是顯示數(shù)據(jù),而不用帶任何別致的鈴聲或口哨聲,那么 Repeater 的功能匱乏就不是主要缺點了。 我之所以強調(diào)“如果”一詞是因為,通常,Web 應(yīng)用程序一旦進行了部署,用戶就會發(fā)現(xiàn)他們需要附加的功能,例如排序、分頁和編輯。

Repeater 有一個彌補性的品質(zhì)(這并不令人吃驚),那就是性能。 Repeater 的性能比 DataList 的性能稍微好一點,比 DataGrid 的性能要好很多。圖 3 顯示了Repeater 每秒能處理的請求數(shù),并與 DataGrid 和 DataList 進行了對比。

Repeater 的每秒請求數(shù) 

圖 3: Repeater 的每秒請求數(shù)

【編輯推薦】

  1. DataList控件入門介紹
  2. DataGrid Web控件運作機制探秘
  3. 小議ASP.NET數(shù)據(jù)Web控件之間的相似性
  4. 從傳統(tǒng)ASP到ASP.NET的轉(zhuǎn)變:了解控件
  5. ASP.NET調(diào)試API之Log4net使用指南
責(zé)任編輯:yangsai 來源: MSDN
相關(guān)推薦

2010-02-01 18:23:54

Python

2013-02-26 10:44:26

2010-02-23 17:04:32

Python編程語言

2022-10-10 18:39:01

legendapp前端框架

2009-01-01 22:08:15

企業(yè)網(wǎng)絡(luò)提高

2016-11-08 13:50:57

2009-01-22 19:03:32

服務(wù)器虛擬化VMware

2024-05-15 08:54:04

C++類型限定符代碼

2012-03-07 15:22:02

2015-12-31 09:44:56

公有云谷歌云評測

2010-07-20 09:18:48

云計算靈活性

2014-04-30 15:52:59

紅帽

2010-07-22 10:08:39

JavaFXJava

2024-08-02 10:21:32

C#Exception類自定義異常

2009-12-09 10:31:14

SOA質(zhì)量SOA靈活性

2012-02-24 09:03:11

云計算虛擬化

2010-01-06 12:16:46

Ubuntu軟件包

2014-05-08 13:31:43

移動安全協(xié)作系統(tǒng)

2012-09-25 13:45:36

Marvell

2009-06-08 09:57:45

編程語言編程語言性能高級編程語言
點贊
收藏

51CTO技術(shù)棧公眾號