從開發
webpart
的過程,我們也可以看出,假若想開發功能比較複雜的
webpart
,也就是表現樣式比較豐富的
webpart
,用我們上面的辦法是行不通的。於是,我們就要想想有沒有別的辦法了。其實,我們仔細考慮下
wss3
中webpart
從哪個類繼承就知道該怎麼作了。由於,無論是
wss3
還是asp.net2
中的webpart
都是從system.web.ui.webcontrols.webparts.webpart
繼承的,而
webpart
又是從system.web.ui.control
繼承的。於是,我們就可以考慮用
page.loadcontrol(filepath)
方法載入使用者控制項了。而此種方法實現的
webpart
就叫使用者控制項包裝器。包裝器的實現與使用者自定義控制項的開發原理也就一樣了。也就是要重寫
createchildcontrols ()
方法和render (htmltextwriter
writer)
方法。我們可以在
createchildcontrols ()
方法中動手腳,也就是在這個控制項裡載入我們的自定義控制項就行了。
使用者控制項包裝器,現在常用的是
quickstart
,對其詳細使用介紹大家可以參考下面這篇文章
。
包裝器實現例子如下:
using system;
using system.runtime.interopservices;
using system.web.ui;
using system.web.ui.webcontrols.webparts;
using system.xml.serialization;
using microsoft.sharepoint;
using microsoft.sharepoint.webcontrols;
using microsoft.sharepoint.webpartpages;
namespace wploadusercontrol
protected override void createchildcontrols()
protected override void render(htmltextwriter writer)}}
內容包裝器控制項
asp.net 2.0 提供了master page 技術,可以把公共的頁面部分放在統一個master檔案中。提供了theme,可以把控制項統一的屬性樣式放在乙個skin檔案中。在我們的ui層頁面開發過程中,會遇到這樣一種情況 很多頁面塊的外圍內容一樣,如csdn論壇的首頁面 那乙個個的內容塊,都要...
控制項的包裝
控制項的包裝,就是把標準控制項包裝一層,是復合控制項的一種特殊形式 比如,比較常見的是對textbox的包裝 public mjtextbox usercontrol 比如 textbox不可調整高度 不可設定padding,所以在布局時會產生困難。namespace winform控制項的包裝 p...
執行緒包裝器
thread.h ifndef thread h define thread h include class thread endif thread.cpp include include static void posixthreadproc void param thread thread bo...