版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
用戶控件和自定義控件用戶控件和自定義控件1學(xué)習目的與要求除在ASP.NET網(wǎng)頁中使用Web服務(wù)器控件外,還可以使用用于創(chuàng)建ASP.NET網(wǎng)頁的相同技術(shù)創(chuàng)建可重復(fù)使用的自定義控件,這些控件稱作用戶控件。學(xué)習目的與要求除在ASP.NET網(wǎng)頁中使用Web服務(wù)器2本章主要內(nèi)容用戶控件:包括什么是用戶控件和如何創(chuàng)建用戶控件。將Web窗體轉(zhuǎn)換成用戶控件。自定義控件的開發(fā)。用戶控件和自定義控件的異同。本章主要內(nèi)容用戶控件:包括什么是用戶控件和如何創(chuàng)建用戶控件。31用戶控件用戶控件是一種復(fù)合控件,工作原理非常類似于ASP.NET網(wǎng)頁。可以向用戶控件添加現(xiàn)有的Web服務(wù)器控件和標記,并定義控件的屬性和方法。然后可以將控件嵌入ASP.NET網(wǎng)頁中充當一個單元。1用戶控件用戶控件是一種復(fù)合控件,工作原理非常類似于ASP41.1用戶控件概述用戶控件使開發(fā)人員能夠根據(jù)應(yīng)用程序的需求,方便的定義和編寫控件。開發(fā)所使用的編程技術(shù)將與編寫Web窗體的技術(shù)相同,只要開發(fā)人員對控件進行修改,就可以將使用該控件的頁面的所有控件都進行更改。1.1用戶控件概述用戶控件使開發(fā)人員能夠根據(jù)應(yīng)用程序的需求51.1用戶控件概述用戶控件與ASP.NET網(wǎng)頁有以下區(qū)別:(1)用戶控件的文件擴展名為.ascx。(2)用戶控件中沒有@Page指令,而是包含@Control指令,該指令對配置及其他屬性進行定義。(3)用戶控件不能作為獨立文件運行。而必須像處理任何控件一樣,將它們添加到ASP.NET頁中。(4)用戶控件中沒有html、body或form元素。這些元素必須位于宿主頁中。1.1用戶控件概述用戶控件與ASP.NET網(wǎng)頁有以下區(qū)61.2將Web窗體頁轉(zhuǎn)換為用戶控件1.將單文件ASP.NET網(wǎng)頁轉(zhuǎn)換為用戶控件將單文件ASP.NET網(wǎng)頁轉(zhuǎn)換為用戶控件的步驟如下:(1)重命名控件使其文件擴展名為.ascx。(2)從該頁面中移除html、body、head
和form元素。(3)將@
Page指令更改為@
Control指令。(4)移除@
Control指令中除Language、AutoEventWireup(如果存在)、CodeFile和Inherits之外的所有特性。(5)在@
Control指令中包含className特性。這允許將用戶控件添加到頁面時對其進行強類型化。1.2將Web窗體頁轉(zhuǎn)換為用戶控件1.將單文件ASP.N71.2將Web窗體頁轉(zhuǎn)換為用戶控件2.將代碼隱藏ASP.NET網(wǎng)頁轉(zhuǎn)換為用戶控件將代碼隱藏ASP.NET網(wǎng)頁轉(zhuǎn)換為用戶控件的步驟如下:(1)重命名.aspx文件,使其文件擴展名為.ascx。(2)根據(jù)代碼隱藏文件使用的編程語言,重命名代碼隱藏文件使其文件擴展名為.ascx.vb或.ascx.cs。(3)打開代碼隱藏文件并將該文件繼承的類從Page
更改為UserControl。(4)針對每個.aspx文件,按照將單文件ASP.NET網(wǎng)頁轉(zhuǎn)換為用戶控件的步驟操作。(5)在@
Control指令中包含className特性。這允許將用戶控件添加到頁面時對其進行強類型化。1.2將Web窗體頁轉(zhuǎn)換為用戶控件2.將代碼隱藏ASP.81.2將Web窗體頁轉(zhuǎn)換為用戶控件3.將Web窗體轉(zhuǎn)換成用戶控件首先,需要刪除<body>、<html>、<head>等標記。對于Web窗體,其標記方式的代碼參見webPage.aspx頁面文件。而對于用戶控件,聲明代碼參見webPageUserControl.ascx文件。1.2將Web窗體頁轉(zhuǎn)換為用戶控件3.將Web窗體轉(zhuǎn)換成用91.3用戶控件的開發(fā)1.建立用戶控件在VisualStudio2008中,首先打開或新建一個網(wǎng)站項目,新建用戶控件。1.3用戶控件的開發(fā)1.建立用戶控件101.3用戶控件的開發(fā)用戶控件創(chuàng)建完畢后,會生成一個WebUserControl1.ascx頁面,然后它將在設(shè)計器中打開。用戶控件創(chuàng)建完成后,.ascx頁面的代碼如下所示。<%@ControlLanguage="C#"AutoEventWireup="true"CodeBehind="WebUserControl1.ascx.cs"Inherits="WebApp7_1.WebUserControl1"%>1.3用戶控件的開發(fā)用戶控件創(chuàng)建完畢后,會生成一個WebU111.3用戶控件的開發(fā)2.完善用戶控件ASP.NET用戶控件能夠封裝一個單元中多個子控件的功能。用戶控件由一個或多個ASP.NET服務(wù)器控件(Button控件、TextBox控件等)以及控件執(zhí)行功能所需的任何代碼組成。用戶控件還可以包括自定義屬性或方法,這些屬性或方法向容器(通常為ASP.NET頁)顯示用戶控件的功能。1.3用戶控件的開發(fā)2.完善用戶控件12用戶控件實例編寫一個用戶登錄控件用戶控件實例編寫一個用戶登錄控件132自定義控件用戶控件能夠執(zhí)行很多操作。并實現(xiàn)一些功能,但是在復(fù)雜的環(huán)境下,用戶控件并不能夠達到開發(fā)人員的要求,是因為用戶控件大部分都是使用現(xiàn)有的控件進行組裝,編寫事件來達到目的。于是,ASP.NET允許開發(fā)人員編寫自定義控件實現(xiàn)復(fù)雜的功能。2自定義控件用戶控件能夠執(zhí)行很多操作。并實現(xiàn)一些功能,但是142.1簡單的自定義控件自定義控件是編寫的一個類,此類從Control或WebControl派生。Control類提供了將其放在Page類的控件樹中的基本功能。自定義控件需要定義一個直接或間接從Control類派生的類,并重寫Render方法。WebControl類將功能添加到基本的控件類,用于在客戶端計算機上顯示可視的內(nèi)容。例如可以使用WebControl類以控制外觀和樣式通過諸如字體、顏色和高度等屬性。2.1簡單的自定義控件自定義控件是編寫的一個類,此類從Co15簡單自定義控件實例首先,需要創(chuàng)建一個自定義控件ServerControl1。簡單自定義控件實例首先,需要創(chuàng)建一個自定義控件Server16簡單自定義控件實例自定義控件創(chuàng)建完成后,會自動生成一個類和相應(yīng)的方法,用戶能夠在源代碼中編寫屬性,示例代碼如下所示。privateintnoOfTimes;publicintNoOfTimes//編寫屬性{get{returnthis.noOfTimes;}//獲取屬性
set{this.noOfTimes=value;}//設(shè)置屬性}簡單自定義控件實例自定義控件創(chuàng)建完成后,會自動生成一個類和17簡單自定義控件實例然后,開發(fā)人員可以在源代碼中編寫和添加屬性。當需要呈現(xiàn)給HTML頁面輸出時,只需要重寫Render方法即可。接著,需要將自定義控件編譯成DLL文件。還需要打開現(xiàn)有的或創(chuàng)建一個新的ASP.NETWeb應(yīng)用程序項目。在該webApp7-2項目中添加自定義控件的引用。單擊【確定】按鈕完成引用的添加后,就可以在頁面中使用此自定義控件。若需要在頁面中需要使用此自定義控件,同樣與用戶控件一樣需要在頭部聲明自定義控件,示例代碼如下所示。<%@RegisterTagPrefix="MyControl"Namespace="ServerControl1"Assembly="ServerControl1"%>簡單自定義控件實例然后,開發(fā)人員可以在源代碼中編寫和添加屬18簡單自定義控件實例自定義注冊完畢后,在工具欄中也會呈現(xiàn)自定義控件,如圖7-11所示。就可以直接拖動自定義控件到頁面,并且配置相應(yīng)的屬性簡單自定義控件實例自定義注冊完畢后,在工具欄中也會19簡單自定義控件實例用戶拖動自定義頁面到控件后,頁面會生成相應(yīng)的自定義控件的HTML代碼如下所示。<formid="form1"runat="server"><div><MyControl:ServerControl1ID="ServerControl11"runat="server"/></div></form>詳細源代碼參見ServerControl1的ServerControl1.cs文件,項目WebApp7-2中的Default.aspx文件簡單自定義控件實例用戶拖動自定義頁面到控件后,頁面會生成相202.2復(fù)合自定義控件最常見的復(fù)雜功能控件就是SqlDataSource控件。SqlDataSource控件是數(shù)據(jù)源控件,通過SqlDataSource控件能夠配置數(shù)據(jù)源,并且實現(xiàn)分頁、插入、刪除等功能。復(fù)合自定義控件就類似這樣一個功能復(fù)雜的控件。2.2復(fù)合自定義控件213用戶控件和自定義控件比較對比用戶控件和自定義控件,很多人或認為用戶控件更加容易開發(fā),而自定義控件的門檻較高,不方便應(yīng)用程序的開發(fā)。通常用戶控件在一個項目中經(jīng)常使用,而自定義控件用來在通用的程序中使用,當網(wǎng)站應(yīng)用程序開發(fā)中,導(dǎo)航控件如果使用用戶控件實現(xiàn),是非常方便的。但是通過自定義控件實現(xiàn),可能
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度農(nóng)業(yè)科技企業(yè)勞動合同保密協(xié)議范本2篇
- 二零二五年度小微企業(yè)擔保合同標準文本3篇
- 二零二五年度施工現(xiàn)場安全管理人員職責及考核合同3篇
- 二零二五年醫(yī)療機構(gòu)病房樓場地租賃及醫(yī)療設(shè)備租賃協(xié)議3篇
- 2025年度電影發(fā)行融資居間服務(wù)協(xié)議3篇
- 二零二五年度文化遺產(chǎn)保護項目工程合同樣本3篇
- 運動課程設(shè)計與展示
- 二零二五年度辦公樓能源消耗監(jiān)測與節(jié)能服務(wù)合同2篇
- 二零二五年度按揭車輛轉(zhuǎn)讓與汽車租賃服務(wù)結(jié)合合同2篇
- 2025年度施工安全用電安全保障措施合同范本2份3篇
- 水利工程施工單位竣工資料目錄
- 技術(shù)經(jīng)濟學(xué)(中國石油大學(xué)(華東))-知到答案、智慧樹答案
- 《中國高鐵作業(yè)設(shè)計方案-2023-2024學(xué)年科學(xué)冀人版》
- 招標代理服務(wù)服務(wù)方案
- 工地生活垃圾處理方案
- 初一數(shù)學(xué)上冊有理數(shù)加減混合運算練習題及答案(共100題)
- 論蘇軾詩詞中的曠達風格
- 肩部健身理論知識講座
- 電腦IT維護崗位 KPI績效考核指標
- 部編人教版八年級下冊英語同步訓(xùn)練全套
- 運輸成本核算
評論
0/150
提交評論