生活随笔
收集整理的這篇文章主要介紹了
用户控件和自定义控件
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
關(guān) 鍵 詞 Server Control 服務(wù)器控件 User Control 用戶控件,ASP.NET服務(wù)器控件的一種(一般后綴名為.ASCX文件) Custom Control 自定義控件,ASP.NET服務(wù)器空間的一種(一般后綴名為.DLL文件) Deployment 部署
. 用戶控件和自定義控件的異同服務(wù)器控件分為用戶控件模型和自定義控件,一般而言,用戶控件模型適合創(chuàng)建內(nèi)部,應(yīng)用程序特定的控件,而自定義控件模型更適合創(chuàng)建通用的和可再分發(fā)的控件, 下面從6個(gè)方面來說明他們的異同。 3.1部署當(dāng)在兩個(gè)控件模型之間進(jìn)行選擇的時(shí)候,部署是最重要的考慮因素,自定義控件模型采用大多數(shù)應(yīng)用程序可以使用的配件形式(.DLL形式),為創(chuàng)建可再分發(fā)的組件而設(shè)計(jì)。用戶控件模型是為單個(gè)應(yīng)用程序的情況設(shè)計(jì)的。用戶控件必須以源代碼形式部署(.ASCX文件),這些需求有增加維護(hù)成本的副作用。 3.2創(chuàng)建創(chuàng)建自定義控件的技術(shù)與創(chuàng)建用戶控件的技術(shù)是不相同的,自定義控件是用.NET編程語言通過編寫一個(gè)從 System.Web.UI.Control類中直接或間接派生的托管類而創(chuàng)建。這里沒有對(duì)創(chuàng)建自定義控件的提供設(shè)計(jì)器支持。但是用戶控件類間接地從System.Web.UI.Control派生而來,用戶控件以.ASCX文件的形式聲明性地創(chuàng)建,這類似于設(shè)計(jì)和開發(fā)ASP.NET頁面的方式(易于設(shè)計(jì)和調(diào)試)。 3.3內(nèi)容和布局由于創(chuàng)建機(jī)制的不同,用戶控件和自定義控件提供不同的內(nèi)容和布局支持自定義控件非常適用于通過編程方式生成的布局中所表現(xiàn)的動(dòng)態(tài)內(nèi)容。例如一個(gè)具有動(dòng)態(tài)行的數(shù)據(jù)綁定控件,一個(gè)動(dòng)態(tài)節(jié)點(diǎn)的控件樹。用戶控件的布局在.ASCX文件創(chuàng)建時(shí)聲明,所以當(dāng)需要固定布局的相對(duì)靜態(tài)的內(nèi)容時(shí),用戶控件是最好的選擇. 3.4設(shè)計(jì)期行為目前,Visual Studio .Net為自定義控件和用戶控件提供了相當(dāng)不同的設(shè)計(jì)期能力。Visual Studio .Net為自定義控件提供很大程度的設(shè)計(jì)期支持功能,比如可以支持設(shè)計(jì)時(shí)屬性,方法。Visual Studio .Net對(duì)用戶控件只擁有很少的設(shè)計(jì)期支持。用戶控件并不在屬性窗口中顯示屬性和事件,也不能放到工具箱中。 3.5性能雖然自定義控件和用戶控件遵循著不同的創(chuàng)建模型并且有不同的特性,但這兩個(gè)控件都是從相同的基類(System.Web.UI.Control)間接地派生的,用戶控件在實(shí)現(xiàn)時(shí)聲明性,在頁面中第一次使用它的時(shí)候,用戶控件作為普通的服務(wù)器控件被解析并編譯進(jìn)配件中。此后用戶控件的行為就象任何其它的編譯的(或者自定義)控件一樣,所以性能上差別不是很大,主要從其他方面來考慮怎么選擇這兩種控件。 4. 服務(wù)器控件開發(fā)情況的建議服 務(wù) 器 控 件 開 發(fā) 情 況 的 建 議情 況建議 5 用戶控件的開發(fā)下面用一個(gè)例子來簡(jiǎn)述一個(gè)用戶控件的開發(fā)過程.(通過把已存在的ASP.NET的部分頁面轉(zhuǎn)換成用戶控件模型). Query_UC_Common.ascx源文件 頁面到自定義控件需要修改的部分 注:頁面到自定義控件需要修改的部分 1:刪除標(biāo)記<html><bodry><head> 2: 把<%@ Page Language="c#" ClassName="RequiredTextField" %>該為<%@ Control Language="c#" ClassName="RequiredTextField" %> 3: 把文件存為.ASCX文件即可 注意:在頁面中調(diào)用用戶控件的說明 1:為用戶控件的聲明語句, 2:TagPrefix:TagName結(jié)合生成一個(gè)標(biāo)簽,服務(wù)器解析時(shí)把它與指定的用戶控件關(guān)聯(lián)在一起,這個(gè)結(jié)合對(duì)已注冊(cè)的每個(gè)用戶控件必須是唯一的。 3: Src="Query_UC_Common.ascx”為用戶控件在位置,可以是相對(duì)路徑也可以是絕對(duì)路徑,但是一定是該頁面用戶可以訪問到的由于這個(gè)通用查詢顯示和打印的用戶控件涉及的知識(shí)點(diǎn)太多
?
?
?
轉(zhuǎn)自:http://hi.baidu.com/tiankong912/blog/item/a5b695134daa9c806438db18.html
轉(zhuǎn)載于:https://www.cnblogs.com/hazai/archive/2010/01/15/1648587.html
總結(jié)
以上是生活随笔 為你收集整理的用户控件和自定义控件 的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔 網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔 推薦給好友。