WalkThroughSharePointWebPart入门指南三_第1页
WalkThroughSharePointWebPart入门指南三_第2页
WalkThroughSharePointWebPart入门指南三_第3页
WalkThroughSharePointWebPart入门指南三_第4页
免费预览已结束,剩余8页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、WalkThroughSharePoint WebPart 入门指南 三Kaneboy MS MVP转载声明:此WalkThrough系列被转载和引用时,请保持博客堂链接。Thanks.此WalkThrough将演示将一个Code-Behind方式编写的User Control载入到WebPart中将所有的内容(WebPart、User Control、包括.ascx)集成到WebPart所在的一个Assembly中,以简化部署背景知识请通过此WalkThrough系列的前两辑了解在VS.NET中创建WebPart、加入User Control、简单部署WebPart等基础知识。如果希望深入了

2、解此WalkThrough中演示的部分代码的含义,请参看MSDN中有关Assembly中Resource部分的文档(如果不想了解,照葫芦画瓢亦可)。一、创建用户控件创建一个“ASP.NET Web应用程序”项目,在项目中添加一个名为“WebUserControl1”的用户控件,并放入一个Calendar控件。在User Control的Code-Behind文件(这里是“WebUserControl1.ascx.cs”)中,加入自己想加入的代码。我们的示例中在User Control的Page_Load事件中加入了一行代码,用来设置Calendar控件的ToolTip属性二、创建WebPart

3、项目在VS.NET中重新建立一个类型为“Web Part Library”,名称为“SampleWebPart”的项目。在项目中通过“添加现有项”菜单,将第一步中建立的UserControl的三个文件全部加入到此项目中。打开“WebUserControl1.ascx.cs”文件,将此文件第一行指定的namespace改成和此项目一致的“SampleWebPart”:namespace SampleWebPart打开“WebUserControl1.ascx”文件,将第一行的“”标签中的“CodeBehind”属性删除,“Inherits”属性的值改为“SampleWebPart.WebUser

4、Control1”:三、设置User Control的编译目标在“解决方案资源管理器”中选中User Control项“WebUserControl1.ascx”,点击鼠标右键,选择“属性”菜单。在出现的属性窗口中,将“生成操作”属性的值更改为“嵌入的资源”。四、在WebPart中载入Resource信息并输出进行这一步骤之前,请回忆WalkThrough第一辑中的第二步。我们这里在WebPart中嵌入一个UserControl的原理和第一辑中的基本相同。让我们现在转到“WebPart1.cs”文件,开始修改我们的WebPart。1、定义一个用来保存UserControl的对象:private

5、 System.Web.UI.Control _innerControl;四、在WebPart中载入Resource信息并输出(二)前面两行的意思是从当前Assembly的Resource中取出指定信息并读到变量resourceContent中。这两行的意思是将resourceContent中的内容写入到一个名为“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”,添加“”标签以信任我们的WebPart。3、在VS.NET中编译,生成最终的“SampleWebPart.dll”。将此(.dll)拷贝到SPS虚拟站点跟目录的“bin”目录下。(只需要拷贝这一个(.dll)文件,不需要再另行拷贝(.ascx)文件。)4、在SPS站点页面中导入我们这个WebPart。上面的步骤详细操作请参看此WalkThrough第一辑中的第三、四、五、六步骤。六、完成WebPart在页面上面的效果如左图。当把鼠标移到Calendar控件上时,可以看到有“Sample Calendar”的提示信息,验证了在第一步添加的Code-Behind代码被执行了。七、To Be Continued注意:我们前面的步骤仅仅用来演示如何实现我们需要的效果,但其细节代码实现的方式并不推荐。首先不推荐将临时的“WebUserControl1.ascx”文件直接写到SPS虚拟

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论