WalkThroughSharePointWebPart入門指南三_第1頁
WalkThroughSharePointWebPart入門指南三_第2頁
WalkThroughSharePointWebPart入門指南三_第3頁
WalkThroughSharePointWebPart入門指南三_第4頁
免費預(yù)覽已結(jié)束,剩余8頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、WalkThroughSharePoint WebPart 入門指南 三Kaneboy MS MVP轉(zhuǎn)載聲明:此WalkThrough系列被轉(zhuǎn)載和引用時,請保持博客堂鏈接。Thanks.此WalkThrough將演示將一個Code-Behind方式編寫的User Control載入到WebPart中將所有的內(nèi)容(WebPart、User Control、包括.ascx)集成到WebPart所在的一個Assembly中,以簡化部署背景知識請通過此WalkThrough系列的前兩輯了解在VS.NET中創(chuàng)建WebPart、加入User Control、簡單部署WebPart等基礎(chǔ)知識。如果希望深入了

2、解此WalkThrough中演示的部分代碼的含義,請參看MSDN中有關(guān)Assembly中Resource部分的文檔(如果不想了解,照葫蘆畫瓢亦可)。一、創(chuàng)建用戶控件創(chuàng)建一個“ASP.NET Web應(yīng)用程序”項目,在項目中添加一個名為“WebUserControl1”的用戶控件,并放入一個Calendar控件。在User Control的Code-Behind文件(這里是“WebUserControl1.ascx.cs”)中,加入自己想加入的代碼。我們的示例中在User Control的Page_Load事件中加入了一行代碼,用來設(shè)置Calendar控件的ToolTip屬性二、創(chuàng)建WebPart

3、項目在VS.NET中重新建立一個類型為“Web Part Library”,名稱為“SampleWebPart”的項目。在項目中通過“添加現(xiàn)有項”菜單,將第一步中建立的UserControl的三個文件全部加入到此項目中。打開“WebUserControl1.ascx.cs”文件,將此文件第一行指定的namespace改成和此項目一致的“SampleWebPart”:namespace SampleWebPart打開“WebUserControl1.ascx”文件,將第一行的“”標(biāo)簽中的“CodeBehind”屬性刪除,“Inherits”屬性的值改為“SampleWebPart.WebUser

4、Control1”:三、設(shè)置User Control的編譯目標(biāo)在“解決方案資源管理器”中選中User Control項“WebUserControl1.ascx”,點擊鼠標(biāo)右鍵,選擇“屬性”菜單。在出現(xiàn)的屬性窗口中,將“生成操作”屬性的值更改為“嵌入的資源”。四、在WebPart中載入Resource信息并輸出進行這一步驟之前,請回憶WalkThrough第一輯中的第二步。我們這里在WebPart中嵌入一個UserControl的原理和第一輯中的基本相同。讓我們現(xiàn)在轉(zhuǎn)到“WebPart1.cs”文件,開始修改我們的WebPart。1、定義一個用來保存UserControl的對象:private

5、 System.Web.UI.Control _innerControl;四、在WebPart中載入Resource信息并輸出(二)前面兩行的意思是從當(dāng)前Assembly的Resource中取出指定信息并讀到變量resourceContent中。這兩行的意思是將resourceContent中的內(nèi)容寫入到一個名為“WebUserControl1.ascx”的文件中。2、重載CreateChildControls()方法。protected override void CreateChildControls() using (StreamReader reader = new StreamRea

6、der(System.Reflection.Assembly.GetExecutingAssembly().GetManifestResourceStream(SampleWebPart.WebUserControl1.ascx) String resourceContent = reader.ReadToEnd(); using (StreamWriter writer = new StreamWriter(this.Page.Server.MapPath(/bin/WebUserControl1.ascx), false) writer.Write(resourceContent); th

7、is._innerControl = this.Page.LoadControl(/bin/WebUserControl1.ascx); this.Controls.Add(this._innerControl);四、在WebPart中載入Resource信息并輸出(三)3、在RenderWebPart()方法中輸出載入的User Control:protected override void RenderWebPart(HtmlTextWriter output) this.EnsureChildControls(); this._innerControl.RenderControl(out

8、put);五、WebPart的其他工作1、編輯“WebPart1.dwp”,配置WebPart。2、編輯SPS虛擬站點上的“web.config”,添加“”標(biāo)簽以信任我們的WebPart。3、在VS.NET中編譯,生成最終的“SampleWebPart.dll”。將此(.dll)拷貝到SPS虛擬站點跟目錄的“bin”目錄下。(只需要拷貝這一個(.dll)文件,不需要再另行拷貝(.ascx)文件。)4、在SPS站點頁面中導(dǎo)入我們這個WebPart。上面的步驟詳細(xì)操作請參看此WalkThrough第一輯中的第三、四、五、六步驟。六、完成WebPart在頁面上面的效果如左圖。當(dāng)把鼠標(biāo)移到Calendar控件上時,可以看到有“Sample Calendar”的提示信息,驗證了在第一步添加的Code-Behind代碼被執(zhí)行了。七、To Be Continued注意:我們前面的步驟僅僅用來演示如何實現(xiàn)我們需要的效果,但其細(xì)節(jié)代碼實現(xiàn)的方式并不推薦。首先不推薦將臨時的“WebUserControl1.ascx”文件直接寫到SPS虛擬

溫馨提示

  • 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)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論