如何在Windows SharePoint Services中创建Web Parts(二)

 

前面一节介绍了一种创建一般Web Part的方法,本节介绍创建SharePoint WebPart

 

二、第二种方式是创建一个SharePoint Web Part

 

Step1可以利用前面第一种方式中使用的方式创建一个Class Library工程,工程名就暂时定为SimpleWebPart

 

Step2接下来添加引用Microsoft.SharePoint.dll

 

Step3强命名Assembly,可以参考前面一节中的介绍。

 

也可以使用Command来强命名(麻烦点),

1、如输入:cd /Program Files/Microsoft Visual Studio .NET 2003/SDK/v1.1/Bin/ 
2、然后输入:sn.exe -k C:/keypair.snk 

(这个路径可以是任意的)

3、在工程中,找到Assembly.cs,加入(或修改)[assembly: AssemblyKeyFile("C://keypair.snk")] 

Step4继承自Microsoft.SharePoint.WebPartPages.WebPart

 

示例代码如下所示。其中RenderWebPartSharePoint Web Part的东西,区别于以前的Render

C# 

Copy Code

//--------------------------------------------------------------------

// File: SimpleWebPart.cs

//

// Purpose: A sample Web Part that demonstrates how to create a basic

// Web Part.

//--------------------------------------------------------------------

 

using System;

using System.ComponentModel;

using System.Runtime.InteropServices;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Xml.Serialization;

using Microsoft.SharePoint;

using Microsoft.SharePoint.WebPartPages;

using Microsoft.SharePoint.Utilities;

using System.Web.UI.HtmlControls;

 

namespace MyWebParts

{

    /// <summary>

    /// This Web Part changes its title and implements a custom property.

    /// </summary>

    [XmlRoot(Namespace="MyWebParts")]   

    public class SimpleWebPart : WebPart

    {

        private const string defaultText = "hello";

        private string text=defaultText;

 

        // Declare variables for HtmlControls user interface elements.

        HtmlButton _mybutton;

        HtmlInputText _mytextbox;

 

        // Event handler for _mybutton control that sets the

        // Title property to the value in _mytextbox control.

        public void _mybutton_click (object sender, EventArgs e)

        {

            this.Title = _mytextbox.Value;

            try

            {

                this.SaveProperties=true;

            }

            catch

            {

                Caption = "Error... Could not save property.";

            }

        }

 

        // Override the ASP.NET Web.UI.Controls.CreateChildControls

        // method to create the objects for the Web Part's controls.     

        protected override void CreateChildControls ()

        {        

            // Create _mytextbox control.

            _mytextbox = new HtmlInputText();

            _mytextbox.Value="";

            Controls.Add(_mytextbox);

 

            // Create _mybutton control and wire its event handler.

            _mybutton = new HtmlButton();

            _mybutton.InnerText = "Set Web Part Title";

            _mybutton.ServerClick += new EventHandler (_mybutton_click);

            Controls.Add (_mybutton);

        }

 

        [Browsable(true),Category("Miscellaneous"),

        DefaultValue(defaultText),

        WebPartStorage(Storage.Personal),

        FriendlyName("Text"),Description("Text Property")]

        public string Text

        {

            get

            {

                return text;

            }

 

            set

            {

                text = value;

            }

        }

       

        protected override void RenderWebPart(HtmlTextWriter output)

        {

            RenderChildren(output);

            // Securely write out HTML

            output.Write("<BR>Text Property: " + SPEncode.HtmlEncode(Text));   

        }

    }

}

Step5Build
Step6:部署Web Part
1、首先将生成的dll添加到bin目录下或是GAC中,这在前面介绍过了。
2、然后添加到SafeControl中,这也跟前面一样。
3、创建一个Web Part Definition file.dwp)。
这个有必要介绍下,dwp文件是一个简单的XML文件,其中包含了Web part的属性设置。如下所示
<?xml version="1.0"?>
<WebPart xmlns="http://schemas.microsoft.com/WebPart/v2">
   <Assembly>AssemblyName(with no .dll extension), 
      Version=VersionNumber, Culture=Culture, 
      PublicKeyToken=PublicKeyToken</Assembly>
   <TypeName>WebPartNamespace.WebPartClassName</TypeName>
   <Title>DefaultWebPartTitle</Title>
   <Description>WebPartDescription</Description>
</WebPart>

创建时,可以新建一个文本文档,然后将上面的内容拷贝到这个文档中,修改其中的属性,最后保存为SimpleWebPart.dwp文件。

 

4、将web part导入到web part页面中

 

Share Point服务中,打开要添加Web Part的页面,从Site Actions菜单中,选择Edit page

点击Add a Web Part,选择Advanced Web Part gallery and options

Add Web Parts区域,点击Import.

导航到前面一步中建立的SimpleWebPart.dwp文件,点击Upload按钮。上传后,页面会刷新,"My Simple Web Part"应该显示在Imported Web Part下面。

拖动"My Simple Web Part"前面的图标,到要放置web part的位置。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值