文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>MOSS 2007基础:开发自定义WebPart--转

MOSS 2007基础:开发自定义WebPart--转

时间:2008-03-29  来源:sdwjian

本文将介绍创建ASP风格的WebPart。最简单的步骤为创建一个类继承自System.Web.UI.WebControls.WebPart类,覆盖(override)方法RenderContents。如果您想要继续为WebPart增加属性(property),可以使用在ASP.NET中相同的办法。如下面的代码显示了一个登录后的用户名。 <IFRAME name=google_ads_frame marginWidth=0 marginHeight=0 src="http://pagead2.googlesyndication.com/pagead/ads?client=ca-pub-1572879403720716&amp;dt=1206783429796&amp;lmt=1204861355&amp;format=336x280_as&amp;output=html&amp;correlator=1206783429781&amp;channel=1662112212&amp;url=http%3A%2F%2Fwww.qqread.com%2Fdotnet%2Fz381283.html&amp;color_bg=F9FCFE&amp;color_text=000000&amp;color_link=265997&amp;color_url=000000&amp;color_border=F9FCFE&amp;ad_type=text_image&amp;ref=http%3A%2F%2Fwww.google.cn%2Fsearch%3Fcomplete%3D1%26hl%3Dzh-CN%26newwindow%3D1%26client%3Daff-cs-worldbrowser%26hs%3DRcC%26q%3Dmoss%2BWebpart%2B%25E8%25BF%259E%25E6%258E%25A5%25E6%2595%25B0%25E6%258D%25AE%25E5%25BA%2593%26meta%3D%26aq%3Df&amp;frm=0&amp;cc=100&amp;ga_vid=1115900033.1206089068&amp;ga_sid=1206783430&amp;ga_hid=2077645436&amp;ga_fc=true&amp;flash=9.0.115.0&amp;u_h=768&amp;u_w=1024&amp;u_ah=738&amp;u_aw=1024&amp;u_cd=32&amp;u_tz=480&amp;u_java=true" frameBorder=0 width=336 scrolling=no height=280 allowTransparency></IFRAME> 本例假设Visual Studio 2005,Microsoft Office SharePoint Server(MOSS) 2007和WSS v3安装在同一台机器上。
1、首先,打开Visual Studio 2005.

    我们将使用类库项目来创建ASP风格的WebPart。点击文件--〉新建项目。在项目类型中选择Visual C#,模板中选类库(Class Library)。在名称出输入TestWebParts。选择合适的保存路径。完成后点击确定。

2、添加对System.Web.dll的引用

    在Solution Explorer中右键点击引用(References),选择添加引用 。

    选择.NET标签下的System.Web,将其添加到引用。

3、添加必须的命名空间

添加下面的命名空间

using System.Web;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

4、继承自类System.Web .UI.WebControls.WebPart

    将Class1.cs重命名为SimpleWebPart,并添加继承System.Web.UI.WebControls.WebParts来创建ASP风格的WebPart。代码如下:

using System; 
using System.Collections.Generic;
using System.Text;
using System.Web.UI;
using System.Web.UI.WebControls.WebParts;
namespace TestWebParts
{
public class SimpleWebPart:WebPart
{
protected override void RenderContents(HtmlTextWriter writer)
{
writer.Write(this.Context.User.Identity.Name);

}
}
}
   我们必须重写RenderContents方法。如上所示。RenderContents方法将根据其参数writer所指定的内容来展示WebPart。writer参数是一个HtmlTextWriter,用于描述将要显示到客户端浏览器中的HTML内容。

    如果我们的WebPart中包含有子控件,我们还需要在这里调用基类的RenderContents方法或者在我们想要显示子控件的地方调用基类的RenderChildren方法,将子控件的内容输出到writer。

   上面的WebPart定义说明该代码并不依赖于Microsoft.SharePoint.dll。所以它既可以被用在ASP.NET应用程序中,也可以用在WSS v3站点。不过在大多数情况下,我们还是要在自定义WebPart中添加对Microsoft.SharePoint.dll的引用,因为这样就可以使用WSS v3提供的对象模型了。

   除支持ASP风格的WebPart外,WSS v3同时被设计为可以支持WSS v2环境下创建的WebPart。旧的WSS风格WebPart继承自Microsoft.SharePoint.dll中的WebPart基类,它是定义在Microsoft.SharePoint.WebPartPages命名空间下的。

在WSS v2中的Microsoft.SharePoint.dll的WebPart类是继承自ASP.NET的Control类。

但是,同时我们也可以看到,WSS v3中Microsoft.SharePoint.dll的WebPart类被修改为继承自ASP.NET的WebPart类。这种将一个组件的基类改为较新的版本的技术(versioning technique)就是rebasing。对Microsoft.SharePoint.dll中的WebPart类的rebasing是使WSS v3环境支持老的WSS风格WebPart的关键。

如果查看一个WSS v3应用程序里的标准的Web.config文件,我们将发现里面包括了重新定向WSS v2的Microsoft.SharePoint.dll到WSS v3版的Microsoft.SharePoint.dll的配置元素。这个重定向与上面所说的rebasing配合起来共同保障了WSS v2环境下所写的WebPart的Dll运行在WSS v3环境中,而不必做任何的改动。

因此,如果我们想要将一个WSS v2的WebPart项目转移到Visual Studio 2005中,我们可以使用与从前相同的方式继续扩充我们的代码,还是可以继续运行。同时,在转移到Visual Studio 2005时,我们还可以选择将项目中对Microsoft.SharePoint.dll的引用切换到WSS v3的版本。这样,该项目的WebPart就会转到上图右侧的WSS v3体系中。
相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载