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

打開APP
userphoto
未登錄

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

開通VIP
動(dòng)態(tài)加載用戶控件的組件?。ㄈ?/div>
上一篇文章寫到動(dòng)態(tài)加載用戶控件的簡(jiǎn)單應(yīng)用    頁(yè)面是用來瀏覽信息的!但是更重要的是和用戶交互,根據(jù)不同的需求提供不同的內(nèi)容服務(wù),這是一種服務(wù)或是一種更貼近用戶的人性化。(又在胡言亂語了!^_^)
動(dòng)態(tài)加載葉面,根據(jù)不同的用戶權(quán)限加載不懂的內(nèi)容服務(wù)。根據(jù)用戶的相應(yīng)加載相應(yīng)的內(nèi)容服務(wù)。
還有另外一個(gè)應(yīng)用就是做到頁(yè)面與代碼的分離。在vs2003里,一般ascx或aspx文件,在剛建立的時(shí)候都直接跟一個(gè)cs文件關(guān)聯(lián)。那么我們?cè)趯懗绦虻臅r(shí)候就不能分開來做。作葉面和寫后臺(tái)代碼的不能分開。為了能夠做到作業(yè)面與作后臺(tái)代碼的能完全分開來,我們可以把后臺(tái)的所有代碼當(dāng)作一個(gè)組件來做就可以了!這樣一個(gè)不用跟cs文件關(guān)聯(lián)的aspx葉面文件直接引用一個(gè)組件就可以了!那么組件可以加載不同的ascx文件最后組成一個(gè)完整的葉面。就這樣一個(gè)項(xiàng)目的開發(fā)就像個(gè)機(jī)車制造廠一樣組裝不同的零件就有輛車出來了。軟件也可以拿來組裝,零件我們也可以訂制,最后整體就可以出來了!(常??磩e人的文章的時(shí)候怎么就覺得廢話那么多,原來發(fā)現(xiàn)我廢話也不少!^_^)
好!讓我們step by step ,就從不需要關(guān)聯(lián)cs文件的aspx葉面開始吧?。ㄔ趘s2005里,我新建aspx葉面的時(shí)候就直接沒有cs文件關(guān)聯(lián)。但是直接有個(gè)不完整類型隱藏起來了。怎么用基類就成為問題了!隱藏部分應(yīng)該是繼承了Page了!那么根據(jù)單繼承的原則我們是不能在繼承別的類型的了。這個(gè)問題有待研究。)
根據(jù)aspx葉面運(yùn)行原理。葉面要跟服務(wù)端交互必須通過一個(gè)run at server的form標(biāo)簽才能行得通。因此我不要先來寫個(gè)form組件,那么form就應(yīng)該是個(gè)容器的形勢(shì)來承載葉面所有要與服務(wù)端交互的元素,(容器太重要了,namespace也可以看作容器,只不過是不能放東西而已,是虛擬的容器)
1、做form容器組建:繼承繼承他就行了,注意一點(diǎn)就是唯一ID的問題。自己繼承的可能該改變了ID,那么回傳的時(shí)候就找不到了啊。切記!當(dāng)然render葉面的時(shí)候是通過遍歷所有form容器內(nèi)所有的組件來一個(gè)個(gè)render出來。所以要改UniqueID。
示例一下:
using System;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.ComponentModel;
namespace Region.Controls {
public class MyForm : System.Web.UI.HtmlControls.HtmlForm {
public override string UniqueID {
get {
if (this.NoNameContainer && this.NamingContainer != this.Page ) {
return base.UniqueID.Substring(base.UniqueID.LastIndexOf(":")+1);
} else {
return base.UniqueID;
}
}
}
protected override void RenderAttributes(HtmlTextWriter writer) {
this. NoNameContainer = true;
base.RenderAttributes (writer);
this. NoNameContainer = false;
}
protected override void RenderChildren(HtmlTextWriter writer) {
this. NoNameContainer = true;
base.RenderChildren (writer);
this. NoNameContainer = false;
}
private Boolean NoNameContainer = false;
}
}
未完(持續(xù))
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服