




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
第6章Web窗體與
基本控件09一月20232Ch6Web窗體與基本控件6.1基于事件的編程模型6.2界面交互控件的分類6.3HTML控件的基本用法6.4基本W(wǎng)eb服務(wù)器控件6.5ASP.NET內(nèi)置對象與狀態(tài)管理6.6頁面切換與頁間數(shù)據(jù)傳遞6.7用戶控件6.1基于事件的編程模型Web窗體頁Web窗體頁的組成及特征,一個(gè)Web窗體默認(rèn)由兩個(gè)文件組成擴(kuò)展名為.aspx的頁面描述文件,稱為代碼隱藏頁擴(kuò)展名為.aspx.cs的文件,該文件對應(yīng)的類稱為代碼隱藏類。
代碼隱藏類作用所有代碼隱藏文件都會(huì)自動(dòng)被編譯為.dll文件。當(dāng)用戶請求Web窗體頁的URL時(shí),ASP.NET將在服務(wù)器上調(diào)用對應(yīng)的.dll文件,并動(dòng)態(tài)地生成HTML頁面輸出到客戶端,供瀏覽器解析和顯示新建Web窗體頁,觀察窗體組成及@Page指令09一月202336.1基于事件的編程模型在客戶端向服務(wù)器發(fā)送信息的過程中,提交方式有GET:將數(shù)據(jù)附加在URL的后面用顯式方式提交POST:將數(shù)據(jù)包含在文件頭中用隱式方式提交默認(rèn)采用POST方式提交數(shù)據(jù)09一月202346.1基于事件的編程模型GET方式通過URL請求來傳遞用戶請求的數(shù)據(jù),將表單內(nèi)各字段名稱及其內(nèi)容,以字符串的形式放在向服務(wù)器提交的URL的后面指定方式:在form的開始標(biāo)記內(nèi)指定method="get"。注意:如果URL后有參數(shù),該URL和其后面的參數(shù)信息也會(huì)在瀏覽器的地址欄中顯示出來。09一月202356.1基于事件的編程模型POST方式POST方式將表單內(nèi)各字段名稱及其內(nèi)容放置在HTML的頭文件內(nèi)傳送給服務(wù)器ASP.NETWeb窗體頁默認(rèn)使用的方式。當(dāng)客戶端使用POST方式向服務(wù)器提交數(shù)據(jù)時(shí),如果頁面元素沒有runat="server"聲明,則服務(wù)器只能通過Request.Form來獲取提交的內(nèi)容。09一月202366.1基于事件的編程模型Web窗體頁對GET和POST的封裝GET與POST缺點(diǎn)在HTML頁中,不論是使用GET還是POST,如果開發(fā)人員希望客戶端發(fā)出請求后,服務(wù)器將處理結(jié)果再返回到發(fā)出請求的頁面,每次都考慮用GET還是POST非常繁瑣。在Web窗體中使用ASP.NETWeb服務(wù)器控件(前綴為“asp:”的控件),簡化了頁面設(shè)計(jì)的復(fù)雜度顯著提高了Web應(yīng)用程序開發(fā)的效率。09一月202376.1基于事件的編程模型Web窗體頁的往返機(jī)制ASP.NET的Web窗體頁是在服務(wù)器上運(yùn)行的,要使頁面中的按鈕或其他內(nèi)容得到處理,必須將這些信息提交到服務(wù)器。每次頁面提交時(shí),都會(huì)再次運(yùn)行其服務(wù)器端代碼,然后向用戶呈現(xiàn)新的頁面,基本處理過程如下:用戶通過客戶端瀏覽器請求頁面,頁面第一次運(yùn)行。程序員可以通過在Page_load事件中編寫代碼對頁面進(jìn)行初步處理,例如初始化頁面等。服務(wù)器將代碼轉(zhuǎn)換為能被客戶端識(shí)別的HTML標(biāo)記發(fā)送到客戶端,客戶端瀏覽器對HTML進(jìn)行解析并將其顯示出來。用戶通過界面進(jìn)行各種操作。例如單擊某個(gè)按鈕等。此時(shí)瀏覽器將頁面再次發(fā)送到Web服務(wù)器,在ASP.NET中稱該過程為“PostBack”,也叫“回發(fā)”。例如用戶正在訪問的頁面是09一月202386.1基于事件的編程模型Default.aspx,當(dāng)用戶單擊該頁面上的某個(gè)按鈕后,瀏覽器發(fā)送到服
務(wù)器的目標(biāo)還是Default.aspx?!癙ostBack”相當(dāng)于在Web服務(wù)器上再次加載該頁面,并能在頁面上獲取用戶操作的信息。如果用戶單擊的是超鏈接而不是按鈕,服務(wù)器可能僅僅將其定位到另一個(gè)頁面,而不會(huì)對包含超鏈接的頁面做進(jìn)一步處理。服務(wù)器執(zhí)行代碼隱藏類中的代碼(簡稱為后臺(tái)代碼),處理指定的操作,然后將執(zhí)行操作后的頁面返回給客戶端瀏覽器。
從基本處理過程可以看出,由于頁面處理發(fā)生在Web服務(wù)器上,因此頁面可以執(zhí)行的每個(gè)操作都需要一次“客戶端服務(wù)器客戶端”的往返行程。09一月202396.1基于事件的編程模型Web窗體頁的生存期09一月202310階
段說
明頁請求頁請求發(fā)生在頁生命周期開始之前。用戶請求頁時(shí),ASP.NET將確定是否需要分析和編譯頁(從而開始頁的生命周期),或者是否可以在不運(yùn)行頁的情況下發(fā)送頁的緩存版本以進(jìn)行響應(yīng)開始在開始階段,將設(shè)置頁屬性,如Request和Response。在此階段,頁還將確定請求是回發(fā)請求還是新請求,并設(shè)置IsPostBack屬性。此外,在開始階段期間,還將設(shè)置頁的UICulture屬性頁初始化(Page_Init事件)頁初始化期間,可以使用頁中的控件,并將設(shè)置每個(gè)控件的UniqueID屬性。此外,任何主題都將應(yīng)用于頁。如果當(dāng)前請求是回發(fā)請求,則回發(fā)數(shù)據(jù)尚未加載,并且控件屬性值尚未還原為視圖狀態(tài)中的值加載(Page_Load事件)加載期間,如果當(dāng)前請求是回發(fā)請求,則將使用從視圖狀態(tài)和控件狀態(tài)恢復(fù)的信息加載控件屬性驗(yàn)證(Validated事件)在驗(yàn)證期間,將調(diào)用所有驗(yàn)證程序控件的Validate方法,此方法將設(shè)置各個(gè)驗(yàn)證程序控件和頁的IsValid屬性回發(fā)事件處理如果請求是回發(fā)請求,則將調(diào)用所有事件處理程序呈現(xiàn)在呈現(xiàn)期間,視圖狀態(tài)將被保存到頁,然后頁將調(diào)用每個(gè)控件,以將其呈現(xiàn)的輸出提供給頁的Response屬性的OutputStream卸載(Page_Unload事件)完全呈現(xiàn)頁、將頁發(fā)送至客戶端并準(zhǔn)備丟棄時(shí),將調(diào)用卸載。此時(shí),將卸載頁屬性(如Response和Request)并執(zhí)行清理6.1基于事件的編程模型母版頁和使用母版頁的Web窗體頁定義:母版頁是指只能被其他Web窗體頁作為模板來引用無法單獨(dú)在瀏覽器中顯示、擴(kuò)展名為.master的特殊網(wǎng)頁。相同點(diǎn):母版頁和普通的Web窗體頁一樣也具有一個(gè)與其對應(yīng)的代碼隱藏頁面,不同點(diǎn)母版頁的第1行用特殊的@Master指令標(biāo)識(shí),而普通網(wǎng)頁則采用@Page指令標(biāo)識(shí)。09一月2023116.1基于事件的編程模型母版頁中,界面被分為公用區(qū)和可編輯區(qū)??删庉媴^(qū)指可在引用母版頁的Web窗體頁中編輯的部分,它由一個(gè)或多個(gè)ContentPlaceHolder占位符控件組成。ContentPlaceHolder占位符程序員創(chuàng)建引用母版頁的Web窗體頁時(shí),ASP.NET會(huì)自動(dòng)將所引用的母版頁的ContentPlaceHolder控件預(yù)留的可編輯區(qū)替換為該控件的實(shí)例。母版頁和Web窗體內(nèi)容頁的創(chuàng)建方法演示創(chuàng)建母版頁的步驟演示使用模板頁的步驟09一月2023126.1基于事件的編程模型主題和外觀主題ASP.NET提供了兩大類型的主題,應(yīng)用程序主題,保存在App_Themes文件夾下的主題文件夾。全局主題。演示創(chuàng)建主題的基本步驟09一月2023136.1基于事件的編程模型外觀定義:外觀是指保存在主題文件夾下創(chuàng)建的擴(kuò)展名為.skin的文件中定義的Web服務(wù)器控件的屬性設(shè)置的集合。分類:在.skin文件中,有兩種定義的控件外觀的方式,分別為“默認(rèn)外觀”和“已命名外觀”。當(dāng)向頁應(yīng)用主題時(shí),默認(rèn)外觀自動(dòng)應(yīng)用于同一類型的所有控件。如果控件外觀沒有SkinID特性,則是默認(rèn)外觀09一月2023146.2界面交互控件的分類表單(form)HTML的form標(biāo)記實(shí)際上是一個(gè)容器,用于通過客戶端瀏覽器和用戶的輸入進(jìn)行交互。例如用戶輸入的信息可以在<form>和</form>之間用提交按鈕以及其他輸入框來實(shí)現(xiàn),當(dāng)用戶填寫完信息后,單擊提交按鈕,即將表單內(nèi)包含的內(nèi)容傳送到服務(wù)器,然后由服務(wù)器根據(jù)用戶的輸入進(jìn)行相應(yīng)處理,處理后再將結(jié)果返回給客戶端。09一月2023156.2界面交互控件的分類HTML控件HTML控件是指基于HTML標(biāo)記的控件。在HTML中,一般通過form表單中的input標(biāo)記來實(shí)現(xiàn)與用戶的交互。例如:<inputid="Button1"type="button"value="button"/>演示代碼編寫方式添加HTML控件的方法演示設(shè)計(jì)視圖添加HTML控件的方法09一月2023166.2界面交互控件的分類HTML服務(wù)器控件將HTML元素轉(zhuǎn)換為HTML服務(wù)器控件任何一個(gè)HTML元素,不論其是否在form塊內(nèi),只要在元素的開始標(biāo)記內(nèi)添加id和runat="server"特性,就能在服務(wù)器端用C#代碼訪問它。例如: <divid="div1"runat="server"></div>但是這里要注意,對于和用戶輸入有關(guān)的控件,如果需要在服務(wù)器端處理,不論是HTML控件還是ASP.NETWeb服務(wù)器控件,都必須將其包含在<form>和</form>之間。09一月2023176.2界面交互控件的分類在代碼隱藏類中使用C#動(dòng)態(tài)控制頁面中的HTML元素將HTML控件轉(zhuǎn)化為HTML服務(wù)器控件后,便可以直接在隱藏代碼類中利用控件的id直接獲取HTML對象。例如HTML代碼為:<inputid="age"type="text"name="age"runat="server"/></p>在代碼隱藏類中,HTML的id特性的值被自動(dòng)封裝為屬性,因此程序員可以通過age屬性修改輸入文本框控件的Value值:this.age.Value="20";HTML服務(wù)器控件共有的屬性網(wǎng)頁中的任何一個(gè)HTML元素,例如div、p、span等,一旦將其作為HTML服務(wù)器控件,該控件的各種特性就會(huì)在代碼隱藏類中被自動(dòng)公開為可以用C#對其進(jìn)行操作的屬性。09一月2023186.2界面交互控件的分類Web服務(wù)器控件什么情況下使用Web服務(wù)器控件當(dāng)進(jìn)行復(fù)雜的頁面設(shè)計(jì)時(shí),因?yàn)閃eb服務(wù)器控件具有比HTML元素更多的內(nèi)置功能。例如導(dǎo)航、驗(yàn)證、動(dòng)態(tài)數(shù)據(jù)顯示、AJAX、WebParts以及數(shù)據(jù)和報(bào)表處理等。當(dāng)需要在客戶端動(dòng)態(tài)地響應(yīng)用戶鼠標(biāo)移動(dòng)、鍵盤輸入等交互性比較頻繁的操作時(shí),由于這些操作實(shí)時(shí)性要求比較強(qiáng),不適合每個(gè)動(dòng)作都在服務(wù)器端處理,可以使用ASP.NETAJAX對服務(wù)器控件進(jìn)行擴(kuò)展,利用JavaScript和jQuery在客戶端響應(yīng)用戶的操作。09一月2023196.2界面交互控件的分類注意Web服務(wù)器控件與HTML服務(wù)器控件相比更為抽象,其對象模型和HTML元素不一定有一對一的關(guān)系。所有ASP.NETWeb服務(wù)器控件全部都帶有“asp:”前綴。為了區(qū)分客戶端控件和服務(wù)器控件,默認(rèn)情況下,VS2010自動(dòng)生成的HTML控件的id一律用小寫字母“id”來表示,Web服務(wù)器控件的id一律用大寫字母“ID”來表示。09一月2023206.3HTML控件的基本用法label標(biāo)記用于為表單控件定義顯示的內(nèi)容,其內(nèi)容一般是文本,但是也可以包含其他標(biāo)記。for特性,用于和其他元素的id綁定,其作用是當(dāng)用戶單擊該標(biāo)記的內(nèi)容時(shí),光標(biāo)焦點(diǎn)就會(huì)自動(dòng)定位到它所綁定的控件上。button標(biāo)記用type特性指定是哪類按鈕,取值有:type="reset":重置按鈕,單擊該按鈕可將表單中的內(nèi)容全部清除type="submit":提交按鈕,單擊該按鈕可以將表單中的內(nèi)容提交到form元素的action特性指定的URL地址中。type="button":普通按鈕,單擊該按鈕會(huì)自動(dòng)觸發(fā)onclick事件。09一月2023216.3HTML控件的基本用法
button標(biāo)記:特殊用法:可以包含元素內(nèi)容,所以可用它來實(shí)現(xiàn)一些特殊的功能,比如同時(shí)顯示圖像和文字:<buttonid="button1"type="submit"style="text-align:center;"> <imgsrc="av.png"alt=""/>修改姓名</button>注意由于不同的瀏覽器對button標(biāo)記的默認(rèn)type類型并不完全相同,所以使用button標(biāo)記來表示按鈕時(shí),一定要指定其type特性,否則有可能得不到預(yù)期的結(jié)果。09一月2023226.3HTML控件的基本用法
input標(biāo)記按鈕input標(biāo)記利用type特性指定是哪類按鈕,其取值和button標(biāo)記的type取值相同,即type="reset"表示重置按鈕,type="submit"表示提交按鈕,type="button"表示普通按鈕。例如: <inputid="button1"type="button"value="確定"/>文本框及密碼框(input、textarea)單行文本框當(dāng)input標(biāo)記的type="text"時(shí),表示控件為單行文本輸入框。例如:<label>用戶名:<inputid="Text1"type="text"value="張三"maxlength="10"/></label>09一月2023236.3HTML控件的基本用法
密碼框當(dāng)input標(biāo)記的type="password"時(shí),表示該標(biāo)記為密碼輸入框。密碼輸入框與單行文本輸入框的功能基本一致,不同的是當(dāng)用戶輸入密碼時(shí),密碼框中的文本顯示的是同一個(gè)字符。例如:<inputid="Password1"type="password"value=”12345”/>多行文本框在HTML中,用textarea標(biāo)記表示多行文本域,用于多行文本輸入。例如:<textareastyle="height:60px;width:300px;"></textarea>09一月2023246.3HTML控件的基本用法
列表和下拉列表(select、option)HTML的select標(biāo)記和option標(biāo)記配合使用,可以用來定義列表項(xiàng)。例如:<div>請選擇專業(yè):<selectid="LanguageSelect"><option>計(jì)算機(jī)科學(xué)與技術(shù)</option><optionselected="selected">網(wǎng)絡(luò)工程</option><option>軟件工程</option></select></div>09一月2023256.3HTML控件的基本用法容器(div、fieldset、legend)容器的用途是可以方便地控制多個(gè)元素,例如只需要控制容器的顯示和隱藏,就能控制該容器所包含的所有元素全部顯示或不顯示。在客戶端實(shí)現(xiàn)中,一般使用div作為容器,也可以用fieldset作為容器,例如:<fieldset><legend>個(gè)人信息</legend><br/>
姓名:<inputtype="text"size="30"/><br/>
地址:<inputtype="text"size="30"/><br/></fieldset>09一月2023266.3HTML控件的基本用法單選按鈕單選按鈕的用途是給用戶提供一組選項(xiàng),在這些選項(xiàng)中,每次只能有一項(xiàng)被選中。當(dāng)input標(biāo)記的type="radio"時(shí),表示該標(biāo)記為單選按鈕。checked屬性:
同一組按鈕的name相同,設(shè)置checked="checked"可以讓按鈕處于選中狀態(tài)。09一月2023276.3HTML控件的基本用法復(fù)選框(input)當(dāng)input標(biāo)記的type="checkbox"時(shí),表示該標(biāo)記為復(fù)選框,復(fù)選框提供多選功能。用戶需要從若干給定的選擇中選取一個(gè)或多個(gè)選項(xiàng)時(shí),可以使用復(fù)選框控件。例如:<label>愛好:<inputid="item1"type="checkbox"/>兵乓球</label><label><inputid="item2"type="checkbox"checked="checked"/>游泳</label><label><inputid="item3"type="checkbox"checked="checked"/>羽毛球</label>09一月2023286.3HTML控件的基本用法文件選擇對話框當(dāng)input標(biāo)記的type="file"時(shí),表示該標(biāo)記為文件選擇框。例如:
<inputid="File1"type="file"/>這段代碼在瀏覽器上顯示的效果下圖所示。使用文件選擇框時(shí),還可以利用accept特性指定提交的文件類型(mime_types),該特性僅適用于type="file"。09一月2023296.3HTML控件的基本用法隱藏域當(dāng)input標(biāo)記的type="hidden"時(shí),表示該標(biāo)記為隱藏域,隱藏域在頁面不可見。可以用來保存一些不讓用戶在頁面中看到的數(shù)據(jù)例如: <inputtype="hidden"id="Hidden1"value="123"/>09一月2023306.4基本W(wǎng)eb服務(wù)器控件
標(biāo)簽和按鈕Button控件該控件為普通按鈕。例如:<asp:ButtonID="Button1"runat="server"Text="按鈕1"/>LinkButton控件LinkButton控件是以超鏈接形式顯示的按鈕,其外觀與超鏈接標(biāo)記相同,但功能與Button控件相同。例如:<asp:LinkButtonID="LinkButton1"runat="server"Height="27px"Width="190px">LinkButton按鈕</asp:LinkButton>09一月2023316.4基本W(wǎng)eb服務(wù)器控件
ImageButton控件ImageButton控件:是以圖片形式顯示的按鈕。ImageUrl:指定所要顯示的圖片。Click事件:提供單擊控件中的圖形區(qū)域時(shí),所單擊的坐標(biāo)位置。Button控件、LinkButton控件和ImageButton控件除了外觀顯示形式不一樣以外,其他用法完全相同。注意:Button控件有一個(gè)OnClientClick屬性(避免和服務(wù)器的單擊事件重復(fù))。當(dāng)用戶單擊按鈕控件時(shí),將首先觸發(fā)客戶端的onclick事件,而后觸發(fā)服務(wù)器端的Click事件。在【設(shè)計(jì)】視圖下,雙擊某個(gè)Button控件,即注冊了該控件的服務(wù)器端Click事件。09一月2023326.4基本W(wǎng)eb服務(wù)器控件
文本框及密碼框(TextBox)TextBox控件的常用屬性和事件:09一月202333屬
性含
義ID屬性指定控件的名稱,它是控件在頁面中的唯一標(biāo)識(shí),代碼通過該屬性來訪問控件AutoPostBack屬性決定控件中文本內(nèi)容修改后,是否自動(dòng)回發(fā)到服務(wù)器,默認(rèn)值為false,即修改文本后并不立即回發(fā)到服務(wù)器,而是等頁面被提交后一并處理。若修改該屬性值為true,則每次更改文本框的內(nèi)容并且焦點(diǎn)離開控件時(shí),都會(huì)自動(dòng)回發(fā),使服務(wù)器處理控件相應(yīng)的TextChanged事件TextMode屬性設(shè)置文本框接受文本的行為模式。該屬性共有3種屬性值:MultiLine(多行輸入模式)、Password(密碼輸入模式)、SingleLine(單行輸入模式)。默認(rèn)值為SingleLineMaxLength屬性獲取或設(shè)置文本框中最多允許輸入的字符數(shù)Text屬性設(shè)置控件上所要顯示的文本TextChanged事件文本框中的內(nèi)容發(fā)生更改且頁面回傳到服務(wù)器端處理時(shí)觸發(fā)的事件。注意,是否觸發(fā)該事件與AutoPostBack屬性有關(guān)。若AutoPostBack屬性設(shè)置為true,當(dāng)該控件失去焦點(diǎn)時(shí),更改文本框中的內(nèi)容都會(huì)使頁面回傳到服務(wù)器端,并同時(shí)觸發(fā)TextChanged事件6.4基本W(wǎng)eb服務(wù)器控件
列表和下拉列表(ListBox、DropDownList)AutoPostBack屬性決定控件選中項(xiàng)發(fā)生變化后,是否自動(dòng)回發(fā)到服務(wù)器。Items屬性用于編輯控件中所要顯示的列表項(xiàng)。SelectionMode屬性用于指定ListBox控件每次可以選擇一個(gè)或多個(gè)。SelectedIndexChanged事件當(dāng)選定項(xiàng)發(fā)生更改時(shí)觸發(fā)該事件。09一月2023346.4基本W(wǎng)eb服務(wù)器控件
單選按鈕(RadioButton、RadioButtonList)用RadioButton控件顯示單選按鈕RadioButtonList控件該控件封裝了一組單選按鈕控件的列表控件。注意Web窗體會(huì)將同一容器中的所有RadioButton控件視為不同的組,可以多選。若要將多個(gè)RadioButton控件作為一組互斥的控件使用,需要讓這些RadioButton控件具有相同的GroupName屬性。09一月2023356.4基本W(wǎng)eb服務(wù)器控件
復(fù)選框(CheckBox、CheckBoxList)CheckBoxList是一組復(fù)選框的集合。CheckBox服務(wù)器控件適合用在選項(xiàng)不多且比較固定的情況,當(dāng)選項(xiàng)比較多時(shí),或者在運(yùn)行時(shí)動(dòng)態(tài)地決定有哪些選項(xiàng)時(shí),使用CheckBoxList控件比較方便。CheckBox控件的常用屬性和事件:09一月202336屬
性含
義Text屬性顯示在復(fù)選框右側(cè)的內(nèi)容Value屬性描述選項(xiàng)的值Checked屬性選中為True,未選中為FalseAutoPostBack屬性決定CheckBox控件狀態(tài)更改后是否自動(dòng)回傳到服務(wù)器處理。該屬性默認(rèn)值為false,即選中狀態(tài)更改后并不立即回傳到服務(wù)器。若修改該屬性值為true,則每次更改CheckBox控件狀態(tài)時(shí),都自動(dòng)回傳,使服務(wù)器觸發(fā)CheckBox控件的CheckedChanged事件CheckedChanged事件復(fù)選框選中狀態(tài)發(fā)生改變時(shí)觸發(fā)6.4基本W(wǎng)eb服務(wù)器控件
容器控件(Panel、Literal、view、MultiView)Panel控件Panel控件在Web窗體頁內(nèi)提供了一種容器控件,可以將它用作其他控件的父級(jí)元素。對控件和標(biāo)記進(jìn)行分組
對于一組控件和相關(guān)的標(biāo)記,可通過把其放置在Panel控件中,然后將此Panel控件中的內(nèi)容作為一個(gè)單元進(jìn)行管理。具有默認(rèn)按鈕的窗體
可將TextBox控件和Button控件放置在Panel控件中,通過Panel控件的【DefaultButton】屬性設(shè)置默認(rèn)按鈕。用戶在面板內(nèi)的文本框中按<Enter>鍵,將與用戶單擊默認(rèn)按鈕具有相同的效果。09一月2023376.4基本W(wǎng)eb服務(wù)器控件
動(dòng)態(tài)生成控件的容器Panel控件為在運(yùn)行時(shí)創(chuàng)建的控件提供了一個(gè)方便使用的容器。頁上的自定義區(qū)域Panel控件在頁上創(chuàng)建具有自定義外觀和行為的區(qū)域,作用如下添加滾動(dòng)條。創(chuàng)建一個(gè)帶標(biāo)題的分組框。注意如果在Panel控件中同時(shí)指定滾動(dòng)條和分組文本,則只會(huì)顯示分組框,而不會(huì)顯示滾動(dòng)條。另外,如果設(shè)置了Panel控件的【GroupingText】屬性,panel邊框的定義和用fieldset及l(fā)egend標(biāo)記組合產(chǎn)生的邊框的定義含義不相同。09一月2023386.4基本W(wǎng)eb服務(wù)器控件
Literal控件Literal控件可使得文本和控件直接呈現(xiàn)在頁面中時(shí)。該Mode屬性取值:Encode:對Text屬性值所包含的特殊符號(hào)進(jìn)行HTML編碼,將其轉(zhuǎn)換為純文本表示形式。PassThrough:不對Text屬性值進(jìn)行HTML編碼。例如“<div>abc</div>”將直接發(fā)送到客戶端,由于在瀏覽器中<div>和</div>被解釋為div標(biāo)記,其實(shí)際效果就是直接顯示div元素的內(nèi)容“abc”。Transform:如果客戶端是瀏覽器,此屬性的功能與PassThrough相同。此功能主要用于目標(biāo)不是瀏覽器的場合。09一月2023396.4基本W(wǎng)eb服務(wù)器控件
View控件與MultiView控件根據(jù)用戶選擇或其他條件提供不同的頁面。例如可能允許用戶從一個(gè)列表中選擇,其中每個(gè)項(xiàng)都有獨(dú)立的View控件與之對應(yīng)。然后可以顯示用戶選擇的View控件里面的內(nèi)容??梢允褂肰iew控件和MultiView控件作為創(chuàng)建多個(gè)Panel控件的一種替代方法。創(chuàng)建多頁窗體。View控件和MultiView控件可以提供與Wizard控件相似的行為。Wizard控件尤其適合于創(chuàng)建用戶分步驟操作的窗體。09一月202340基本W(wǎng)eb服務(wù)器控件圖像顯示和區(qū)域控制(Image、ImageMap)Image控件:在ASP.NET網(wǎng)頁上顯示圖像<asp:ImageID="Image1"runat="server"ImageUrl="圖片URL地址"/>注意:Image控件不響應(yīng)鼠標(biāo)單擊事件。實(shí)際應(yīng)用中,可以通過使用ImageMap或ImageButton控件來創(chuàng)建交互式圖像。09一月202341基本W(wǎng)eb服務(wù)器控件ImageMap控件創(chuàng)建一個(gè)能與用戶交互的圖像,該圖像包含許多用戶可以單擊的區(qū)域,這些區(qū)域被稱為熱點(diǎn)區(qū)域。當(dāng)用戶需要對一幅圖片的某個(gè)局部范圍進(jìn)行操作時(shí),需要使用ImageMap控件。例如:一個(gè)旅游地點(diǎn)的全景圖,可以將全景圖劃分為幾個(gè)熱點(diǎn)區(qū)域,當(dāng)鼠標(biāo)在熱點(diǎn)區(qū)域A內(nèi)單擊,則頁面轉(zhuǎn)向景點(diǎn)A的的URL地址,在熱點(diǎn)區(qū)域B內(nèi)單擊,則轉(zhuǎn)向景點(diǎn)B的URL地址。HotSpotMode屬性09一月20234209一月2023436.5ASP.NET內(nèi)置對象與狀態(tài)管理ASP.NET提供的APIASP.NET提供了非常多的類,這些類分布在不同的命名空間下,供Web開發(fā)人員使用。ASP.NET提供的與用戶界面相關(guān)的API命名空間說
明System.Web.UI提供創(chuàng)建ASP.NETWeb應(yīng)用程序用戶界面的服務(wù)器控件和網(wǎng)頁的類和接口。System.Web.UI.DataVisualization.Charting包含ChartWeb服務(wù)器控件的類System.Web.UI.Design.WebControls包含可用于擴(kuò)展Web服務(wù)器控件設(shè)計(jì)時(shí)支持的類System.Web.UI.Design.WebControls.WebParts包含為從該命名空間中的類派生的控件提供設(shè)計(jì)時(shí)支持的類System.Web.UI.HtmlControls包含可在Web窗體頁上創(chuàng)建HTML服務(wù)器控件的類集合。System.Web.UI.WebControls包含可在網(wǎng)頁上創(chuàng)建Web服務(wù)器控件的類。System.Web.UI.WebControls.WebParts包含集成在一起的一組類和接口,可用于創(chuàng)建網(wǎng)頁P(yáng)age類及其擴(kuò)充類Page類提供的常用屬性和方法常用屬性和方法說
明IsPostBack屬性獲取一個(gè)值,該值指示頁是第一次呈現(xiàn)(false)還是為了響應(yīng)回發(fā)而加載(true)ClientID屬性獲取由ASP.NET生成的HTML標(biāo)記的控件IDPreviousPage屬性獲取向當(dāng)前頁傳輸控件的頁Request屬性獲取請求的頁的HttpRequest對象Response屬性獲取與該P(yáng)age對象關(guān)聯(lián)的HttpResponse對象Server屬性獲取HttpServerUtility類的實(shí)例,該屬性提供對常用的HtmlEncode和MapPath方法的訪問ViewState屬性獲取當(dāng)前頁的視圖狀態(tài)對象Session屬性獲取ASP.NET提供的當(dāng)前Session對象Application屬性為當(dāng)前Web請求獲取HttpApplicationState對象Cache屬性獲取與該頁駐留的應(yīng)用程序關(guān)聯(lián)的Cache對象Context屬性獲取與該頁關(guān)聯(lián)的HttpContext對象User屬性取有關(guān)發(fā)出頁請求的用戶的信息FindControl方法Page類及其擴(kuò)充類HttpRequest對象在代碼隱藏類中,通過當(dāng)前頁的Request屬性可獲取HttpRequest對象HttpResponse對象用于管理輸出到客戶端的信息。通過當(dāng)前頁的Response屬性可獲取HttpResponse對象。HttpServerUtility對象網(wǎng)頁提供對編碼、解碼等方法的訪問。通過當(dāng)前頁的Server屬性可獲取HttpServerUtility對象。HttpContext對象通過Page.Context屬性可獲取與該頁關(guān)聯(lián)的HttpContext對象。ASP.NET狀態(tài)管理基于客戶端的狀態(tài)管理選項(xiàng)基于客戶端的狀態(tài)管理選項(xiàng)只在頁中或客戶端計(jì)算機(jī)上存儲(chǔ)信息。對于這些選項(xiàng),在各往返行程間不會(huì)在服務(wù)器上維護(hù)任何信息ViewState對象
ViewState對象是頁面公開的字典對象,可以保存各種數(shù)據(jù)類型Cookie對象
Cookie對象一般用于在客戶端保存一些針對某個(gè)用戶的信息Cookie本質(zhì)上只是一小段文本字符串,該字符串一般保存在用戶計(jì)算機(jī)特定文件夾下的某個(gè)文件中,每個(gè)Cookie都保存到一個(gè)對應(yīng)的文件中。ASP.NET狀態(tài)管理基于服務(wù)器的狀態(tài)管理選項(xiàng)基于服務(wù)器的狀態(tài)管理選項(xiàng)只在服務(wù)器上存儲(chǔ)信息。Session對象在服務(wù)器內(nèi)存中為每個(gè)用戶分別分配一段內(nèi)存空間來保存數(shù)據(jù),并用SessionID來區(qū)分是哪個(gè)客戶。開發(fā)人員可以定義、修改、釋放每個(gè)用戶Session集合中的一個(gè)或多個(gè)Session對象。Application對象
Page類的Application屬性用于獲取HttpApplicationState對象HttpApplicationState類主要用于提供在整個(gè)應(yīng)用程序中共享的信息。09一月202347ASP.NET配置appSettings用于統(tǒng)一為應(yīng)用程序定義一些全局常量
strings=System.Configuration.ConfigurationManager.AppSettings["message"]connectionStrings用于配置數(shù)據(jù)庫連接字符串。 strings=System.Configuration.ConfigurationManager.ConnectionStrings["testmdf"].ConnectionString;system.webcompilation屬性和authentication屬性。調(diào)試程序時(shí),一般將compilation
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 海底撈收銀員崗位職責(zé)與操作規(guī)范他
- 幼兒園隔離與消毒落實(shí)措施
- 管網(wǎng)改造升級(jí)給水管網(wǎng)施工進(jìn)度計(jì)劃
- 道路橋梁混凝土冬季保溫措施他
- 蘇教版六年級(jí)上冊科學(xué)教案計(jì)劃
- 人音版三年級(jí)下冊音樂教學(xué)問題解決計(jì)劃
- 雙減背景下學(xué)科作業(yè)差異化設(shè)計(jì)心得體會(huì)
- 六年級(jí)下冊交通生命安全教學(xué)計(jì)劃
- 以實(shí)踐為翼筑牢小學(xué)低段數(shù)感根基
- 統(tǒng)編版四年級(jí)語文上冊教學(xué)質(zhì)量提升計(jì)劃
- 主持人服裝搭配課件
- 土木工程力學(xué)(本)-001-國開機(jī)考復(fù)習(xí)資料
- 【MOOC】小白學(xué)Python-南京財(cái)經(jīng)大學(xué) 中國大學(xué)慕課MOOC答案
- 工業(yè)5G專網(wǎng)構(gòu)筑新質(zhì)生產(chǎn)力發(fā)展新優(yōu)勢
- 電線電纜生產(chǎn)常見質(zhì)量問題改善與提升
- 2024-2030年中國倉庫行業(yè)面臨的機(jī)遇與挑戰(zhàn)規(guī)劃研究報(bào)告
- 生態(tài)綠化修復(fù)項(xiàng)目投標(biāo)文件(技術(shù)方案)
- “學(xué)生中心”下的化學(xué)高效教學(xué)策略
- 污水處理廠化驗(yàn)室管理
- 四川省遂寧市(2024年-2025年小學(xué)四年級(jí)語文)人教版期末考試((上下)學(xué)期)試卷及答案
- 游戲行業(yè)的數(shù)據(jù)分析和決策支持
評(píng)論
0/150
提交評(píng)論