版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
洛陽(yáng)理工學(xué)院課堂教學(xué)教案教師姓名:課程名稱:Web程序設(shè)計(jì)授課時(shí)數(shù):6第7、8、9次課授課綱要第4章ASP.NET服務(wù)器控件4.1ASP.NET服務(wù)器控件概述4.2HTML元素和服務(wù)器控件4.2.1HTML元素4.2.2HTML服務(wù)器控件4.3標(biāo)準(zhǔn)服務(wù)器控件4.3.1按鈕控件4.3.2TextBox(文本框)控件4.3.3ListBox控件和DropDownList控件4.3.4CheckBox(復(fù)選框)和CheckBoxList(復(fù)選框列表)控件4.3.5Image和ImageMap控件4.3.6RadioButton和RadioButtonList服務(wù)器控件4.3.7MultiView和View控件4.3.8AdRotator(廣告控件)服務(wù)器控件4.3.9Literal控件和Panel控件4.4驗(yàn)證控件4.4.1ASP.NET驗(yàn)證控件4.4.2驗(yàn)證Web窗體頁(yè)中的用戶輸入4.5用戶控件教學(xué)目標(biāo)1.了解ASP.NET服務(wù)器控件的分類、定義2.掌握如何向網(wǎng)頁(yè)添加ASP.NET服務(wù)器控件,如何配置控件的屬性、3.行為和外觀以及如何以編程方式使用這些控件。教學(xué)重點(diǎn)1.ASP.NET服務(wù)器控件的屬性、方法、事件2.ASP.NET服務(wù)器控件的事件觸發(fā)機(jī)制教學(xué)難點(diǎn)ASP.NET服務(wù)器控件的方法使用方法教學(xué)方法及手段項(xiàng)目驅(qū)動(dòng),案例教學(xué),一體化課堂;板書(shū)+多媒體。教學(xué)過(guò)程設(shè)計(jì)詳細(xì)授課內(nèi)容及具體過(guò)程,見(jiàn)正文描述。課外拓展試編寫(xiě)一個(gè)具有計(jì)算器功能的頁(yè)面作業(yè)布置復(fù)習(xí)服務(wù)器控件實(shí)驗(yàn),編寫(xiě)實(shí)驗(yàn)4上機(jī)程序。教學(xué)后記以下內(nèi)容屬于第7次課:第4章ASP.NET服務(wù)器控件[主要介紹HTML服務(wù)器控件、標(biāo)準(zhǔn)服務(wù)器控件、驗(yàn)證控件和用戶控件]4.1ASP.NET服務(wù)器控件概述在網(wǎng)頁(yè)上經(jīng)??吹教顚?xiě)信息用的文本框、單選按鈕、復(fù)選框、下拉列表等元素,它們都是控件??丶强芍赜玫慕M件或?qū)ο螅凶约旱膶傩院头椒?,可以響?yīng)事件。ASP.NET服務(wù)器控件是服務(wù)器端ASP.NET網(wǎng)頁(yè)上的對(duì)象,當(dāng)用戶通過(guò)瀏覽器請(qǐng)求ASP.NET網(wǎng)頁(yè)時(shí),這些控件將運(yùn)行并把生成的標(biāo)準(zhǔn)的HTML文件發(fā)送給客戶端瀏覽器來(lái)呈現(xiàn)。在ASP.NET頁(yè)面上,標(biāo)準(zhǔn)服務(wù)器控件表現(xiàn)為一個(gè)標(biāo)記,例如<asp:textbox…/>。這些標(biāo)記不是標(biāo)準(zhǔn)的HTML元素,因此如果它們出現(xiàn)在網(wǎng)頁(yè)上,瀏覽器將無(wú)法理解它們,然而,當(dāng)從Web服務(wù)器上請(qǐng)求一個(gè)ASP.NET頁(yè)面時(shí),這些標(biāo)記都將動(dòng)態(tài)地轉(zhuǎn)換為HTML元素,因此瀏覽器只會(huì)接收到它能理解的HTML內(nèi)容。在創(chuàng)建.aspx頁(yè)面時(shí),可以將任意的服務(wù)器控件放置到頁(yè)面上,然而請(qǐng)求服務(wù)器上該頁(yè)面的瀏覽器將只會(huì)接收到HTML和JavaScript腳本代碼,如圖4-1所示。Web瀏覽器無(wú)法理解ASP.NET。Web瀏覽器只理解HTML,可能也理解JavaScript——但它不能處理ASP.NET代碼。服務(wù)器讀取ASP.NET代碼并進(jìn)行處理,將所有ASP.NET特有的內(nèi)容轉(zhuǎn)換為HTML以及(如果瀏覽器支持的話)一些JavaScript代碼,然后將最新生成的HTML發(fā)送回瀏覽器。ASP.NET服務(wù)器控件主要類別有HTML服務(wù)器控件、標(biāo)準(zhǔn)服務(wù)器控件、驗(yàn)證控件、用戶控件、數(shù)據(jù)控件、導(dǎo)航控件等。4.2HTML服務(wù)器控件[描述如何使用VWD2008工具箱的“HTML”選項(xiàng)卡上的ASP.NET服務(wù)器控件]4.2.1HTML元素在VWD2008中,從工具箱添加到頁(yè)面上的HTML服務(wù)器控件只是已設(shè)置了某些屬性的HTML元素,當(dāng)然也可通過(guò)輸入HTML標(biāo)記在“源”視圖中創(chuàng)建HTML元素。默認(rèn)情況下,ASP.NET文件中的HTML元素作為文本進(jìn)行處理,并且不能在服務(wù)器端代碼中引用這些元素,只能在客戶端通過(guò)javascript和vbscript等腳本語(yǔ)言來(lái)控制。工具箱的“HTML”選項(xiàng)卡上提供了一些基于HTMLINPUT元素的控件。本節(jié)通過(guò)下列兩個(gè)控件HTMLINPUT元素的使用方法。4.2.1HTML元素(1)Input(Button)控件,按鈕控件:默認(rèn)情況下是“INPUTtype="button"元素”。(2)Input(Text)控件,文本框控件:默認(rèn)情況下是“INPUTtype="text"元素”。Input(Button)元素的主要功能是創(chuàng)建一個(gè)用來(lái)觸發(fā)事件處理程序的按鈕,通過(guò)使用onclick屬性來(lái)表明單擊按鈕可以觸發(fā)的處理方法。其主要屬性有:ID:此控件的編程名稱;value:設(shè)置按鈕中顯示的文字?!纠?-1】演示如何使用Input(Text)元素和Input(Button)元素[結(jié)合操作講解]參見(jiàn)教材。4.2.2HTML服務(wù)器控件在VWD2008中,從工具箱添加到ASP.NET頁(yè)面上的HTML服務(wù)器控件只是已設(shè)置了某些屬性的HTML元素。默認(rèn)情況下,這些添加到ASP.NET文件中的HTML元素被視為傳遞給瀏覽器的標(biāo)記,作為文本進(jìn)行處理,不能在服務(wù)器端的代碼中引用這些元素。若要使這些元素能以編程方式進(jìn)行訪問(wèn),可以通過(guò)添加runat="server"屬性表明應(yīng)將HTML元素作為服務(wù)器控件進(jìn)行處理。還可設(shè)置HTML元素的id屬性,這樣就可使用基于服務(wù)器的代碼對(duì)其進(jìn)行編程引用了?!纠?-2】演示如何使用工具箱的Input(Button)服務(wù)器控件、Input(Text)服務(wù)器控件[結(jié)合操作講解]步驟請(qǐng)參見(jiàn)教材。4.3標(biāo)準(zhǔn)服務(wù)器控件ASP.NET包含大量可在ASP.NET網(wǎng)頁(yè)上使用的標(biāo)準(zhǔn)服務(wù)器控件。本節(jié)重點(diǎn)從ASP.NET服務(wù)器控件的工作原理和過(guò)程入手,介紹控件的常用功能和用法。4.3.1按鈕控件可使用ASP.NETButton服務(wù)器控件為用戶提供向服務(wù)器發(fā)送網(wǎng)頁(yè)的能力。該控件會(huì)在服務(wù)器代碼中觸發(fā)一個(gè)事件,可以處理該事件來(lái)響應(yīng)回發(fā)。ASP.NET包括三種按鈕控件,每種按鈕控件在網(wǎng)頁(yè)上顯示的方式都不同,如下表4-1所列:(1)按鈕事件:當(dāng)用戶單擊任何Button(按鈕)服務(wù)器控件時(shí),會(huì)將該頁(yè)發(fā)送到服務(wù)器。這使得在基于服務(wù)器的代碼中,網(wǎng)頁(yè)被處理,任何掛起的事件被引發(fā)。這些按鈕還可引發(fā)它們自己的Click事件,可以為這些事件編寫(xiě)“事件處理程序”。(2)按鈕回發(fā)行為:[重點(diǎn)]當(dāng)用戶單擊按鈕控件時(shí),該頁(yè)回發(fā)到服務(wù)器。默認(rèn)情況下,該頁(yè)回發(fā)到其本身,在這里重新生成相同的頁(yè)面并處理該頁(yè)上控件的事件處理程序??梢耘渲冒粹o以將當(dāng)前頁(yè)面回發(fā)到另一頁(yè)面。這對(duì)于創(chuàng)建多頁(yè)窗體可能非常有用。在某些情況下,可能希望Button控件也使用客戶端腳本執(zhí)行回發(fā)。這在希望以編程方式操作回發(fā)(如將回發(fā)附加到頁(yè)面上的其他元素)時(shí)非常有用??梢詫utton控件的UseSubmitBehavior屬性設(shè)置為true以使Button控件使用基于客戶端腳本的回發(fā)。(3)處理Button控件的客戶端事件Button控件既可以引發(fā)服務(wù)器事件,也可以引發(fā)客戶端事件。服務(wù)器事件在回發(fā)后發(fā)生,且這些事件在為頁(yè)面編寫(xiě)的服務(wù)器端代碼中處理??蛻舳耸录诳蛻舳四_本(通常為ECMAScript(JavaScript))中處理,并在提交頁(yè)面前引發(fā)。通過(guò)向ASP.NET按鈕控件添加客戶端事件,可以執(zhí)行一些任務(wù)(如在提交頁(yè)之前顯示確認(rèn)對(duì)話框以及可能取消提交)。【例4-3】演示Button控件、LinkButton控件、ImageButton控件的使用。步驟請(qǐng)參見(jiàn)教材。[結(jié)合操作講解]4.3.2TextBox(文本框)控件TextBox服務(wù)器控件是讓用戶向ASP.NET網(wǎng)頁(yè)輸入文本的控件。默認(rèn)情況下,該控件的TextMode屬性設(shè)置為TextBoxMode.SingleLine,這將顯示一個(gè)單行文本框。但可以將TextMode屬性設(shè)置為TextBoxMode.MultiLine,以顯示多行文本框(該文本框?qū)⒆鳛閠extarea元素呈現(xiàn))。也可以將TextMode屬性更改為TextBoxMode.Password,以顯示屏蔽用戶輸入的文本框。通過(guò)使用Text屬性可以獲得TextBox控件中顯示的文本。安全說(shuō)明:將TextMode屬性設(shè)置為TextBoxMode.Password可有助于確保在輸入密碼時(shí)其他人無(wú)法看到。但是,輸入到文本框中的文本沒(méi)有以任何方式進(jìn)行加密,為了提高安全性,在發(fā)送其中帶有密碼的頁(yè)時(shí),可以使用安全套接字層(SSL)和加密?!纠?-4】演示文本框TextBox控件、標(biāo)簽Label控件、按鈕Button控件的使用。[結(jié)合操作講解]步驟請(qǐng)參見(jiàn)教材。
以下內(nèi)容屬于第8次課:4.3.3ListBox控件和DropDownList控件ListBox服務(wù)器控件使用戶能夠從預(yù)定義的列表中選擇一項(xiàng)或多項(xiàng)。DropDownList服務(wù)器控件使用戶可以從預(yù)定義的下拉列表中選擇單個(gè)項(xiàng),它與ListBox服務(wù)器控件的不同之處在于,其選項(xiàng)列表在用戶單擊下拉按鈕之前一直保持隱藏狀態(tài)。此外,DropDownList控件不支持多重選擇模式。DropDownList控件的某個(gè)選項(xiàng)被選中時(shí),該控件將引發(fā)SelectedIndexChanged事件。默認(rèn)情況下,此事件不會(huì)導(dǎo)致向服務(wù)器發(fā)送頁(yè),但可通過(guò)將AutoPostBack屬性設(shè)置為true,強(qiáng)制該控件立即發(fā)送。如果將ListBox控件的屬性SelectionMode的值從“Single”改為“Multiple”將允許進(jìn)行多重選擇,用戶可以在按住Ctrl或Shift鍵的同時(shí),單擊以選擇多個(gè)項(xiàng)?!纠?-5】演示ListBox控件和DropDownList控件的使用。步驟請(qǐng)參見(jiàn)教材。[結(jié)合操作講解]4.3.4CheckBox(復(fù)選框)和CheckBoxList(復(fù)選框列表)控件CheckBox控件和CheckBoxList控件分別用于向用戶提供選項(xiàng)和選項(xiàng)列表。CheckBox控件適合用在選項(xiàng)不多且比較固定的情況,當(dāng)選項(xiàng)較多或需在運(yùn)行時(shí)動(dòng)態(tài)決定有哪些選項(xiàng)時(shí),使用CheckBoxList控件比較方便?!纠?-6】演示復(fù)選框控件CheckBox和復(fù)選框列表控件CheckBoxLis使用。步驟請(qǐng)參見(jiàn)教材。[結(jié)合操作講解]4.3.5Image和ImageMap控件
ASP.NET3.5包含兩個(gè)圖形控件,一個(gè)Image,一個(gè)是ImageMap控件。(1)Image服務(wù)器控件使您可以在ASP.NET網(wǎng)頁(yè)上顯示圖像,并用自己的代碼管理這些圖像??梢栽谠O(shè)計(jì)時(shí)或運(yùn)行時(shí)以編程方式為Image對(duì)象指定圖形文件。還可以將控件的ImageUrl屬性綁定到一個(gè)數(shù)據(jù)源,以根據(jù)數(shù)據(jù)庫(kù)信息顯示圖形。與大多數(shù)其他服務(wù)器控件不同,Image控件不支持任何事件。例如,Image控件不響應(yīng)鼠標(biāo)單擊事件。實(shí)際上,可以通過(guò)使用ImageMap或ImageButton控件來(lái)創(chuàng)建交互式圖像。(2)Imagemap說(shuō)白了就是一種圖形,包括許多不同部分,將鼠標(biāo)指針指在圖形的各個(gè)部分,點(diǎn)一下鼠標(biāo)左鍵,就可以進(jìn)入另一個(gè)超級(jí)鏈接的頁(yè)面。Imagemap不一定要真的是map,可以是任何圖形。比如一張臉好了,將鼠標(biāo)點(diǎn)在眼睛上就出現(xiàn)關(guān)于眼睛的頁(yè)面,點(diǎn)在鼻子上就出現(xiàn)鼻子的頁(yè)面(很適合做成整容外科的網(wǎng)頁(yè)吧?!),也是一種ImageMap。ImageMap控件由兩個(gè)元素組成。第一個(gè)是圖像,它可是任何標(biāo)準(zhǔn)Web圖形格式的圖形,如.gif、.jpg或.png文件。第二個(gè)元素是HotSpot(作用點(diǎn))控件的集合。每個(gè)作用點(diǎn)控件都是一個(gè)類型為CircleHotSpot、RectangleHotSpot或PolygonHotSpot的不同項(xiàng)。對(duì)于每個(gè)作用點(diǎn)控件,都要定義用于指定該作用點(diǎn)的位置和大小的坐標(biāo)。例如,如果創(chuàng)建一個(gè)CircleHotSpot控件,則需要定義圓心的x和y坐標(biāo)以及圓的半徑。響應(yīng)用戶單擊:每一個(gè)作用點(diǎn)都可以是一個(gè)單獨(dú)的超鏈接或回發(fā)事件??梢灾付ㄓ脩魡螕糇饔命c(diǎn)時(shí)發(fā)生的事件,可以將每個(gè)作用點(diǎn)配置為可以轉(zhuǎn)到為該作用點(diǎn)提供的URL的超鏈接?;蛘撸部梢詫⒖丶渲脼樵谟脩魡螕裟硞€(gè)作用點(diǎn)時(shí)執(zhí)行回發(fā),并可為每個(gè)作用點(diǎn)提供一個(gè)唯一值?;匕l(fā)會(huì)引發(fā)ImageMap控件的Click事件。在事件處理程序中,可以讀取分配給每個(gè)作用點(diǎn)的唯一值。【例4-7】演示Image控件和ImageMap控件的使用。[結(jié)合操作講解]步驟請(qǐng)參見(jiàn)教材。提示:HotSpots(作用點(diǎn))的坐標(biāo)以像素為單位,在Windows的【畫(huà)圖】程序中打開(kāi),任選一種畫(huà)圖工具,移動(dòng)鼠標(biāo),在下部狀態(tài)欄中可看到當(dāng)前鼠標(biāo)所在處的像素點(diǎn)的坐標(biāo),如圖4-11所示。4.3.6RadioButton和RadioButtonList服務(wù)器控件在向ASP.NET網(wǎng)頁(yè)添加單選按鈕時(shí),可以使用兩種服務(wù)器控件:?jiǎn)蝹€(gè)RadioButton控件或RadioButtonList控件。這兩種控件都允許用戶從一小組互相排斥的預(yù)定義選項(xiàng)中進(jìn)行選擇。這些控件允許您定義任意數(shù)目帶標(biāo)簽的單選按鈕,并將它們水平或垂直排列。每類控件都有各自的優(yōu)點(diǎn)。單個(gè)RadioButton控件使您可以更好地控制單選按鈕組的布局。例如,可以在各單選按鈕之間加入文本(即非單選按鈕文本)。RadioButtonList控件不允許您在按鈕之間插入文本,但如果想將按鈕綁定到數(shù)據(jù)源,使用這類控件要方便得多。在編寫(xiě)代碼以檢查所選定的按鈕方面,它也稍微簡(jiǎn)單一些。1.對(duì)單選按鈕分組單選按鈕很少單獨(dú)使用,而是進(jìn)行分組以提供一組互斥的選項(xiàng)。在一個(gè)組內(nèi),每次只能選擇一個(gè)單選按鈕。您可以用下列方法創(chuàng)建分組的單選按鈕:(1)先向頁(yè)面中添加單個(gè)的RadioButton控件,然后將所有這些控件手動(dòng)分配到一個(gè)組(GroupName)中。具有相同組名的所有單選按鈕視為單個(gè)組的組成部分。(2)向頁(yè)面中添加一個(gè)RadioButtonList控件。該控件中的列表項(xiàng)將自動(dòng)進(jìn)行分組。2.RadioButton事件在單個(gè)RadioButton控件和RadioButtonList控件之間,事件的工作方式略有不同。單個(gè)RadioButton控件在用戶單擊該控件時(shí)引發(fā)CheckedChanged事件。默認(rèn)情況下,這一事件并不導(dǎo)致向服務(wù)器發(fā)送頁(yè)面,但通過(guò)將AutoPostBack屬性設(shè)置為true,可以使該控件強(qiáng)制立即發(fā)送。與單個(gè)的RadioButton控件相反,RadioButtonList控件在用戶更改列表中選定的單選按鈕時(shí)會(huì)引發(fā)SelectedIndexChanged事件。默認(rèn)情況下,此事件并不導(dǎo)致向服務(wù)器發(fā)送窗體,但可以通過(guò)將AutoPostBack屬性設(shè)置為true來(lái)指定此選項(xiàng)。【例4-8】演示單選按鈕控件RadioButton和單選按鈕列表控件RadioButtonList使用。[結(jié)合操作講解]4.3.7MultiView和View控件MultiView和View控件和制作出選項(xiàng)卡的效果,MultiView控件用作一個(gè)或多個(gè)View控件的外部容器。View控件又可包含標(biāo)記和控件的任何組合。如果要切換視圖,可以使用控件的ID或者View控件的索引值。在MultiView控件中,一次只能將一個(gè)View控件定義為活動(dòng)視圖。如果某個(gè)View控件定義為活動(dòng)視圖,它所包含的子控件則會(huì)呈現(xiàn)到客戶端??梢允褂肁ctiveViewIndex屬性或SetActiveView方法定義活動(dòng)視圖。如果ActiveViewIndex屬性為空,則MultiView控件不向客戶端呈現(xiàn)任何內(nèi)容。如果活動(dòng)視圖設(shè)置為MultiView控件中不存在的View,則會(huì)在運(yùn)行時(shí)引發(fā)ArgumentOutOfRangeException。一些常用的屬性、方法:ActiveViewIndex屬性:用于獲取或設(shè)置當(dāng)前被激活顯示的View控件的索引值。默認(rèn)值為-1,表示沒(méi)有View控件被激活。SetActiveView方法:用于激活顯示特定的View控件。ActiveViewChanged事件:當(dāng)視圖切換時(shí)被激發(fā)。MultiView控件一次顯示一個(gè)View控件,并公開(kāi)該View控件內(nèi)的標(biāo)記和控件。通過(guò)設(shè)置MultiView控件的ActiveViewIndex屬性,可以指定當(dāng)前可見(jiàn)的View控件。呈現(xiàn)View控件內(nèi)容:未選擇某個(gè)View控件時(shí),該控件不會(huì)呈現(xiàn)到頁(yè)面中。但是,每次呈現(xiàn)頁(yè)面時(shí)都會(huì)創(chuàng)建所有View控件中的所有服務(wù)器控件的實(shí)例,并且將這些實(shí)例的值存儲(chǔ)為頁(yè)面的視圖狀態(tài)的一部分。引用控件:每個(gè)View控件都支持Controls屬性,該屬性包含該View控件中的控件集合。也可以在代碼中單獨(dú)引用View控件中的控件。在視圖間導(dǎo)航:除了通過(guò)將MultiView控件的ActiveViewIndex屬性設(shè)置為要顯示的View控件的索引值可以在視圖間導(dǎo)航外,MultiView控件還支持可以添加到每個(gè)View控件的導(dǎo)航按鈕。若要?jiǎng)?chuàng)建導(dǎo)航按鈕,可以向每個(gè)View控件添加一個(gè)按鈕控件(Button、LinkButton或ImageButton)。然后可以將每個(gè)按鈕的CommandName和CommandArgument屬性設(shè)置為保留值以使MultiView控件移動(dòng)到另一個(gè)視圖?!纠?-9】View和MultiView控件示例。[結(jié)合操作講解]4.3.8AdRotator[廣告控件]服務(wù)器控件AdRotator服務(wù)器控件提供一種在ASP.NET網(wǎng)頁(yè)上顯示廣告的方法。該控件可顯示.gif文件或其他圖形圖像。當(dāng)用戶單擊廣告時(shí),系統(tǒng)會(huì)將他們重定向到指定的目標(biāo)URL。AdRotator服務(wù)器控件可從數(shù)據(jù)源(通常是XML文件或數(shù)據(jù)庫(kù)表)提供的廣告列表中自動(dòng)讀取廣告信息,如圖形文件名和目標(biāo)URL。您可以將信息存儲(chǔ)在一個(gè)XML文件或數(shù)據(jù)庫(kù)表中,然后將AdRotator控件綁定到該文件。AdRotator控件會(huì)隨機(jī)選擇廣告,每次刷新頁(yè)面時(shí)都將更改顯示的廣告。廣告可以加權(quán)以控制廣告條的優(yōu)先級(jí)別,這可以使某些廣告的顯示頻率比其他廣告高。也能編寫(xiě)在廣告間循環(huán)的自定義邏輯。AdRotator控件的所有屬性都是可選的。XML文件中可以包括下列屬性:ImageUrl:要顯示的圖像的URL。NavigateUrl:?jiǎn)螕鬉dRotator控件時(shí)要轉(zhuǎn)到的網(wǎng)頁(yè)的URL。AlternateText:圖像不可用時(shí)顯示的文本。Keyword:可用于篩選特定廣告的廣告類別。Impressions:一個(gè)指示廣告的可能顯示頻率的數(shù)值(加權(quán)數(shù)值)。在XML文件中,所有Impressions值的總和不能超過(guò)2,048,000,000-1。Height:廣告的高度(以像素為單位)。此值會(huì)重寫(xiě)AdRotator控件的默認(rèn)高度設(shè)置。Width:廣告的寬度(以像素為單位)。此值會(huì)重寫(xiě)AdRotator控件的默認(rèn)寬度設(shè)置?!纠?-10】使用AdRotator服務(wù)器控件顯示數(shù)據(jù)庫(kù)中的廣告[結(jié)合操作講解]4.3.9Literal控件和Panel控件Literal控件和Panel控件均可作為容器控件,但二者的適用場(chǎng)合不同,下面分別介紹。1.Literal控件Literal控件可以作為頁(yè)面上其他內(nèi)容的容器,最常用于向頁(yè)面中動(dòng)態(tài)添加內(nèi)容。對(duì)于靜態(tài)內(nèi)容,無(wú)需使用容器,可以將標(biāo)記作為HTML直接添加到頁(yè)面中。但是,如果要?jiǎng)討B(tài)添加內(nèi)容,則必須將內(nèi)容添加到容器中。典型的容器有Label控件、Literal控件、Panel控件和PlaceHolder控件。Literal控件與Label控件的區(qū)別在于Literal控件不向文本中添加任何HTML元素。(Label控件呈現(xiàn)一個(gè)span元素。)因此,Literal控件不支持包括位置屬性在內(nèi)的任何樣式屬性。但是,Literal控件允許指定是否對(duì)內(nèi)容進(jìn)行編碼。Panel和PlaceHolder控件呈現(xiàn)為div元素,這將在頁(yè)面中創(chuàng)建離散塊,與Label和Literal控件進(jìn)行內(nèi)嵌呈現(xiàn)的方式不同。通常情況下,當(dāng)希望文本和控件直接呈現(xiàn)在頁(yè)面中而不使用任何附加標(biāo)記時(shí),可使用Literal控件。Literal控件常用的屬性是Mode屬性,該屬性用于指定控件對(duì)您所添加的標(biāo)記的處理方式??梢詫ode屬性設(shè)置為以下值:Transform.:將對(duì)添加到控件中的任何標(biāo)記進(jìn)行轉(zhuǎn)換,以適應(yīng)請(qǐng)求瀏覽器的協(xié)議。如果向使用HTML外的其他協(xié)議的移動(dòng)設(shè)備呈現(xiàn)內(nèi)容,此設(shè)置非常有用。PassThrough.:添加到控件中的任何標(biāo)記都將按原樣呈現(xiàn)在瀏覽器中。Encode:將使用HtmlEncode方法對(duì)添加到控件中的任何標(biāo)記進(jìn)行編碼,這會(huì)將HTML編碼轉(zhuǎn)換為其文本表示形式。例如,<b>標(biāo)記將呈現(xiàn)為<b>。當(dāng)希望瀏覽器顯示而不解釋標(biāo)記時(shí),編碼將很有用。編碼對(duì)于安全也很有用,有助于防止在瀏覽器中執(zhí)行惡意標(biāo)記。顯示來(lái)自不受信任的源的字符串時(shí)推薦使用此設(shè)置?!纠?-11】演示Literal控件的使用。[結(jié)合操作講解]2.Panel控件Panel控件在ASP.NET網(wǎng)頁(yè)內(nèi)提供了一種容器控件,可以將它用作靜態(tài)文本和其他控件的父控件,向該控件添加其他控件和靜態(tài)文本。[特別說(shuō)明和強(qiáng)調(diào)]可以將Panel控件用作其他控件的容器。當(dāng)以編程方法創(chuàng)建內(nèi)容并需要一種將內(nèi)容插入到頁(yè)面中的方法時(shí),此方法尤為適用。以下部分描述了可以使用Panel控件的其他方法。(1)動(dòng)態(tài)生成的控件的容器Panel控件為在運(yùn)行時(shí)創(chuàng)建的控件提供了一個(gè)方便的容器。(2)對(duì)控件和標(biāo)記進(jìn)行分組對(duì)于一組控件和相關(guān)的標(biāo)記,可以通過(guò)把其放置在Panel控件中,然后操作此Panel控件的方式將它們作為一個(gè)單元進(jìn)行管理。例如,可以通過(guò)設(shè)置面板的Visible屬性來(lái)隱藏或顯示該面板中的一組控件。(3)具有默認(rèn)按鈕的窗體可將TextBox控件和Button控件放置在Panel控件中,然后通過(guò)將Panel控件的DefaultButton屬性設(shè)置為面板中某個(gè)按鈕的ID來(lái)定義一個(gè)默認(rèn)的按鈕。如果用戶在面板內(nèi)的文本框中進(jìn)行輸入時(shí)按Enter,這與用戶單擊特定的默認(rèn)按鈕具有相同的效果。這有助于用戶更有效地使用項(xiàng)目窗體。(4)向其他控件添加滾動(dòng)條有些控件(如TreeView控件)沒(méi)有內(nèi)置的滾動(dòng)條。通過(guò)在Panel控件中放置滾動(dòng)條控件,可以添加滾動(dòng)行為。若要向Panel控件添加滾動(dòng)條,請(qǐng)?jiān)O(shè)置Height和Width屬性,將Panel控件限制為特定的大小,然后再設(shè)置ScrollBars屬性。(5)頁(yè)上的自定義區(qū)域可使用Panel控件在頁(yè)面上創(chuàng)建具有自定義外觀和行為的區(qū)域,如下所示:創(chuàng)建一個(gè)帶標(biāo)題的分組框:可設(shè)置GroupingText屬性來(lái)顯示標(biāo)題。呈現(xiàn)頁(yè)時(shí),Panel控件的周圍將顯示一個(gè)包含標(biāo)題的框,其標(biāo)題是您指定的文本。說(shuō)明:不能在Panel控件中同時(shí)指定滾動(dòng)條和分組文本。如果設(shè)置了分組文本,其優(yōu)先級(jí)高于滾動(dòng)條。在頁(yè)面上創(chuàng)建具有自定義顏色或其他外觀的區(qū)域:Panel控件支持外觀屬性(如BackColor和BorderWidth),可以設(shè)置外觀屬性為頁(yè)面上的某個(gè)區(qū)域創(chuàng)建獨(dú)特的外觀。說(shuō)明:設(shè)置GroupingText屬性將自動(dòng)在Panel控件周圍呈現(xiàn)一個(gè)邊框?!纠?-12】演示文件Panel控件的使用。[結(jié)合操作講解]
以下內(nèi)容屬于第9次課:4.4驗(yàn)證控件[重點(diǎn)講解:驗(yàn)證控件的使用場(chǎng)所和定義]ASP.NET為開(kāi)發(fā)人員提供了一套完整的服務(wù)器控件來(lái)驗(yàn)證用戶輸入的信息是否有效,這些控件可與ASP.NET網(wǎng)頁(yè)上的任何控件(包括HTML和服務(wù)器控件)一起使用。4.4.1ASP.NET驗(yàn)證控件表4-2列出了ASP.NET驗(yàn)證控件及其功能說(shuō)明。驗(yàn)證對(duì)象模型:通過(guò)使用由各個(gè)驗(yàn)證控件和頁(yè)面公開(kāi)的對(duì)象模型,可以與驗(yàn)證控件進(jìn)行交互。每個(gè)驗(yàn)證控件都會(huì)公開(kāi)自己的IsValid屬性,可以測(cè)試該屬性以確定該控件是否通過(guò)驗(yàn)證測(cè)試。頁(yè)面還公開(kāi)一個(gè)IsValid屬性,該屬性總結(jié)頁(yè)面上所有
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 民族彈撥樂(lè)器制作工操作水平考核試卷含答案
- 花藝環(huán)境設(shè)計(jì)師崗后水平考核試卷含答案
- 實(shí)驗(yàn)動(dòng)物養(yǎng)殖員誠(chéng)信考核試卷含答案
- 鋁電解綜合工崗前個(gè)人防護(hù)考核試卷含答案
- 自行車裝配工崗前進(jìn)階考核試卷含答案
- 2024年延安職業(yè)技術(shù)學(xué)院輔導(dǎo)員招聘考試真題匯編附答案
- 耐火制品加工工安全技能強(qiáng)化考核試卷含答案
- 2024年遼寧醫(yī)藥職業(yè)學(xué)院馬克思主義基本原理概論期末考試題附答案
- 金屬船體制造工沖突解決強(qiáng)化考核試卷含答案
- 2025年《行測(cè)》必考題庫(kù)帶答案
- GJB3243A-2021電子元器件表面安裝要求
- 湖北省襄陽(yáng)市樊城區(qū) 2024-2025學(xué)年七年級(jí)上學(xué)期期末學(xué)業(yè)質(zhì)量監(jiān)測(cè)道德與法治試卷
- 汽車維修數(shù)據(jù)共享平臺(tái)構(gòu)建-深度研究
- SCR脫硝催化劑體積及反應(yīng)器尺寸計(jì)算表
- 《短暫性腦缺血發(fā)作》課件
- 2025年測(cè)繪工作總結(jié)范文
- 公司質(zhì)量管理簡(jiǎn)介
- 外墻涂料翻新施工方案安全措施
- 中國(guó)武術(shù)段位制考評(píng)員考核復(fù)習(xí)題
- GB/T 5578-2024固定式發(fā)電用汽輪機(jī)規(guī)范
- 中建《項(xiàng)目目標(biāo)成本測(cè)算操作指南》
評(píng)論
0/150
提交評(píng)論