国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
DataList與Repeater
DataList與Repeater是另外兩組數(shù)據(jù)類(lèi)控件,這兩組控件在ASP.NET 1.X的版本中已經(jīng)提供,在ASP.NET 2.0中被保留下來(lái)。這兩組控件的功能與上述XXXView之類(lèi)的控件有些重疊,因此開(kāi)發(fā)人員很容易發(fā)生混淆,試著了解它們之間本質(zhì)上的差異,是在適當(dāng)?shù)臅r(shí)機(jī)妥善運(yùn)用這些控件的關(guān)鍵。這一節(jié),我們將針對(duì)這兩個(gè)控件進(jìn)行相關(guān)的說(shuō)明,同時(shí)針對(duì)它們與XXXView類(lèi)控件的差別進(jìn)行說(shuō)明。
雖然XXXView這一類(lèi)的控件為單筆數(shù)據(jù)與多筆數(shù)據(jù)的視圖編輯提供了方便的內(nèi)置功能,但是DataList與Repeater可讓我們以更彈性的方式來(lái)呈現(xiàn)數(shù)據(jù)內(nèi)容,同樣,我們假設(shè)讀者已經(jīng)有了相關(guān)的使用經(jīng)驗(yàn),因此直接來(lái)看看DataList在網(wǎng)頁(yè)上呈現(xiàn)的效果。在設(shè)置的過(guò)程中,你會(huì)看到此控件與前面討論的XXXView這一類(lèi)的控件的差異。
示例BooksTypedDataSetR/UDataList.aspx
在上述項(xiàng)目中,新建一個(gè)網(wǎng)頁(yè)文件,將其命名為UDataList.aspx,在網(wǎng)頁(yè)上配置一個(gè)ObjectDataSource,指定其數(shù)據(jù)源為前面建立的BooksAuthorTableAdapters.BooksTableAdapter數(shù)據(jù)集。緊接著將一個(gè)DataList控件插入網(wǎng)頁(yè),并且指定其數(shù)據(jù)源為ObjectDataSource,完成之后的網(wǎng)頁(yè)接口如下:
 
DataList是一個(gè)與GridView功能類(lèi)似的控件,但是它以樣板呈現(xiàn)每一筆數(shù)據(jù)的內(nèi)容,就如同把FormView嵌入GridView中取代以表格呈現(xiàn)的數(shù)據(jù)行,如此一來(lái),開(kāi)發(fā)人員可以更彈性地調(diào)整其中的每一筆數(shù)據(jù),這些內(nèi)容同樣由不同的面板所提供。打開(kāi)DataList控件的智能型標(biāo)簽,如下圖所示,單擊功能面板最下方的"編輯樣板"鏈接,切換到樣板編輯功能。
 
在默認(rèn)的情形下,DataList控件會(huì)顯示ItemTemplate樣板。當(dāng)你切換到這個(gè)樣板的時(shí)候,會(huì)發(fā)現(xiàn)其設(shè)計(jì)模式與FormView非常類(lèi)似,只是它最后會(huì)將所有的數(shù)據(jù)內(nèi)容顯示出來(lái)。除此之外,它同時(shí)提供了EditItemTemplate等編輯樣板,分隔符號(hào)樣板甚至還提供開(kāi)發(fā)人員自行設(shè)計(jì)用來(lái)分隔數(shù)據(jù)的區(qū)隔符號(hào),如下圖所示。
 
如果沒(méi)有進(jìn)行任何的設(shè)置,在瀏覽器中將會(huì)呈現(xiàn)以下的結(jié)果,它顯示了所有的數(shù)據(jù)內(nèi)容。
 
讀者可以從這個(gè)示例中發(fā)現(xiàn),與GridView比較,DataList以樣板呈現(xiàn)每一列的內(nèi)容,因此當(dāng)你需要同時(shí)呈現(xiàn)一筆以上的數(shù)據(jù),又要兼顧單筆編輯的彈性時(shí),使用DataList會(huì)是比較合適的選擇。它可以讓我們處理GridView難以達(dá)到的數(shù)據(jù)外觀,但是相對(duì)地,它會(huì)缺失GridView的一些功能,例如分頁(yè)或數(shù)據(jù)排序等。無(wú)論如何,DataList適合我們自定義數(shù)據(jù)的版面內(nèi)容,后續(xù)會(huì)有更多的討論。
DataList提供了兩個(gè)非常重要的屬性讓我們能夠輕易地改變其外觀:RepeatColumns與RepeatDirection。前者指定單一列所要呈現(xiàn)的數(shù)據(jù)筆數(shù),后者則是數(shù)據(jù)所要呈現(xiàn)的方向。在默認(rèn)的情形下,RepeatColumns被設(shè)置為0,而RepeatDirection為Vertical,因此在這個(gè)示例中數(shù)據(jù)是由上而下、一次呈現(xiàn)一筆,讀者可以自行調(diào)整這兩個(gè)屬性值,看看效果的差異。以下的頁(yè)面是將RepeatColumns設(shè)置為3、而RepeatDirection為Horizontal,表示每一列會(huì)呈現(xiàn)3筆數(shù)據(jù),以水平方向從左至右顯示,如下圖所示。
 
談完DataList,現(xiàn)在來(lái)看看DataRepeater控件。如同其名稱(chēng)所表示的,適合用來(lái)呈現(xiàn)一些需要以重復(fù)格式表示的數(shù)據(jù)內(nèi)容,例如列表數(shù)據(jù)等。使用這個(gè)控件的時(shí)候應(yīng)該了解的是,它不同于我們所討論的任何一種數(shù)據(jù)接口,當(dāng)你完成數(shù)據(jù)綁定設(shè)置的時(shí)候,并不會(huì)產(chǎn)生任何綁定的數(shù)據(jù)內(nèi)容,開(kāi)發(fā)人員必須手動(dòng)切換到網(wǎng)頁(yè)標(biāo)簽的程序代碼中進(jìn)行設(shè)置,才能將綁定的數(shù)據(jù)呈現(xiàn)出來(lái),它甚至沒(méi)有提供可視化的功能?,F(xiàn)在我們來(lái)看它在網(wǎng)頁(yè)上的運(yùn)用。
示例BooksTypedDataSetR/URepeater.aspx
這個(gè)示例配置了一個(gè)ObjectDataSource控件及示范用的Repeater控件,建立其數(shù)據(jù)源為BooksAuthorTableAdapters.AuthorsTableAdapter,同時(shí)將Repeater控件綁定至ObjectDataSource控件,此時(shí)所呈現(xiàn)的界面如下:
 
數(shù)據(jù)源設(shè)置完成之后,Repeater控件并沒(méi)有因此自動(dòng)建立數(shù)據(jù)綁定,開(kāi)發(fā)人員必須自已手動(dòng)完成相關(guān)的配置?,F(xiàn)在切換到原始文件編輯頁(yè),在其中的<asp:Repeater>標(biāo)簽中輸入以下的內(nèi)容: <asp:Repeater ID="Repeater1" runat="server"
DataSourceID="ObjectDataSource1">
<HeaderTemplate>
<div style=" text-align:center; background :Black;
font-weight:bolder;color:white; ">
圖書(shū)作者列表數(shù)據(jù)</div>
</HeaderTemplate>
<ItemTemplate>
<div style=" text-align:center"><%# Eval("authorName") %> </div>
</ItemTemplate>
<AlternatingItemTemplate >
<div style=" text-align:center; background :lightblue ">
<%# Eval("authorName") %> </div>
</AlternatingItemTemplate>
<FooterTemplate>
<div style=" text-align:center; background :Black;
font-weight:bolder;color:white; ">結(jié)束</div>
</FooterTemplate>
</asp:Repeater>
這段嵌入<asp:Repeater>標(biāo)簽區(qū)塊的程序代碼,建立了4個(gè)樣板,分別定義標(biāo)頭(HeaderTemplate)、數(shù)據(jù)內(nèi)容(ItemTemplate)、換行替代內(nèi)容(AlternatingItemTemplate)及頁(yè)尾(FooterTemplate)。其中分別以<div>標(biāo)簽定義每個(gè)樣板所要呈現(xiàn)的內(nèi)容,陰影部分的代碼通過(guò)Eval綁定數(shù)據(jù)源內(nèi)容。
下面為此定義在網(wǎng)頁(yè)上所呈現(xiàn)的內(nèi)容:
 
Repeater控件是一種內(nèi)容完全開(kāi)放的自定義的數(shù)據(jù)接口,因此在設(shè)計(jì)的過(guò)程中,可以有最大的彈性,但是同時(shí),你必須耗費(fèi)更大的精力才能完成所需的功能。與DataList控件相同,這兩組控件適合制作某些需要個(gè)性化的特殊版面,因?yàn)樗鼈冊(cè)试S開(kāi)發(fā)人員彈性地自定義所要呈現(xiàn)的數(shù)據(jù)內(nèi)容,相反,如果XXXView控件能夠輕易達(dá)到的功能,就不建議選擇此種控件來(lái)實(shí)現(xiàn)。
完成了數(shù)據(jù)接口的介紹,本章的內(nèi)容即將告一段落。我們從主版頁(yè)面的網(wǎng)站共享區(qū)域開(kāi)始,討論了如何創(chuàng)建網(wǎng)站系統(tǒng)的表示層接口,同時(shí)針對(duì)導(dǎo)航控件的運(yùn)用,進(jìn)行了相關(guān)的說(shuō)明。讀者完成本章的課程后,應(yīng)該已經(jīng)具備了足夠的知識(shí)建立整體網(wǎng)站的可視化接口。
從下一章開(kāi)始,我們要繼續(xù)介紹另外一個(gè)重要的主題:會(huì)員管理與網(wǎng)站的授權(quán)驗(yàn)證機(jī)制,完成網(wǎng)頁(yè)的主體構(gòu)造。接下來(lái)開(kāi)發(fā)人員必須進(jìn)一步為網(wǎng)站系統(tǒng)導(dǎo)入會(huì)員管理機(jī)制,提供進(jìn)一步的授權(quán)驗(yàn)證的相關(guān)功能。
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶(hù)發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
vs 2005 的控件區(qū)別
gridview、datalist、repeater、FormView、DetailsView的區(qū)別詳解
ASP.NET中g(shù)ridview、datalist、repeater、FormView、DetailsView的區(qū)別詳解
數(shù)據(jù)綁定
在網(wǎng)站內(nèi)加入RSS功能
在ASP.NET中使用LINQ(第一部分) - Scott Guthrie 博客中文版 -...
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服