CustomPropertyToolPart 类

代表实现的一个或多个自定义属性 (之外供稿WebPart基类的属性) 的 Web 部件工具窗格中显示的默认工具部件。

继承层次结构

System.Object
  System.Web.UI.Control
    System.Web.UI.WebControls.WebControl
      System.Web.UI.WebControls.Panel
        System.Web.UI.WebControls.WebParts.Part
          System.Web.UI.WebControls.WebParts.EditorPart
            Microsoft.SharePoint.WebPartPages.EditorPartAdapter
              Microsoft.SharePoint.WebPartPages.ToolPart
                Microsoft.SharePoint.WebPartPages.CustomPropertyToolPart

命名空间:  Microsoft.SharePoint.WebPartPages
程序集:  Microsoft.SharePoint(位于 Microsoft.SharePoint.dll 中)

语法

声明
<AspNetHostingPermissionAttribute(SecurityAction.LinkDemand, Level := AspNetHostingPermissionLevel.Minimal)> _
Public NotInheritable Class CustomPropertyToolPart _
    Inherits ToolPart
用法
Dim instance As CustomPropertyToolPart
[AspNetHostingPermissionAttribute(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)]
public sealed class CustomPropertyToolPart : ToolPart

备注

将使用CustomPropertyToolPart类的实例的默认属性窗格中,如果属性为的类型String、 Boolean、 Integer或Enum自动显示自定义属性。下表介绍上述每种属性类型的CustomPropertyToolPart类中属性窗格中的显示方式。

属性类型

为属性窗格中显示

Boolean

复选框

枚举

下拉列表

Integer

文本框。

字符串

文本框。

DateTime

文本框

示例

下面的简单 Web 部件示例演示如何将WebPartToolPart类和CustomPropertyToolPart类自定义 Web 部件工具窗格中的属性的显示。该示例重写WebPart基类的GetToolParts方法,以便在其自定义属性后, 跟工具窗格中显示 Web 部件的标准属性,然后展开每个工具部件的特定部分并隐藏特定的标准属性。WebPartToolPart类自动显示 Web 部件的标准属性,并CustomPropertyToolPart类自动显示 Web 部件的自定义属性。

Imports System
Imports System.ComponentModel
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Xml.Serialization
Imports Microsoft.SharePoint
Imports Microsoft.SharePoint.Utilities
Imports Microsoft.SharePoint.WebPartPages

' A simple Web Part with a single custom Text property.

<DefaultProperty("Text"), ToolboxData("<{0}:WebPart1 
runat=server></{0}:WebPart1>"), 
XmlRoot(Namespace:="WebPartLibrary1")> _
 Public Class WebPart1 
Inherits Microsoft.SharePoint.WebPartPages.WebPart

    Private Const _defaultText As String = ""
    Dim _text As String = _defaultText

    ' The Web Part's single custom Text property.

    <Browsable(True), Category("Miscellaneous"), 
        DefaultValue(_defaultText), WebPartStorage(Storage.Personal), 
        FriendlyName("Text"), Description("Text Property")> _
    Property [Text]() As String
        Get
            Return _text
        End Get

        Set(ByVal Value As String)
            _text = Value
        End Set
    End Property

    ' An overridden version of the GetToolParts() method of the WebPart base class.
    ' The WebPartToolPart automatically displays the Web Part's standard properties
    ' The CustomPropertyToolPart displays automatically displays 
    '  the Web Part's custom properties

    Public Overrides Function GetToolParts() As ToolPart()
        Dim toolParts(2) As ToolPart
        Dim custom As CustomPropertyToolPart = New CustomPropertyToolPart
        custom.Expand("Miscellaneous")
        Dim wptp As WebPartToolPart = New WebPartToolPart
        With wptp
            .Expand(WebPartToolPart.Categories.Appearance)
            .Hide(WebPartToolPart.Properties.FrameState)
            .Hide(WebPartToolPart.Properties.FrameType)
        End With
        toolParts(0) = custom
        toolParts(1) = wptp
        Return toolParts
    End Function

    ' Renders the Web Part.

    Protected Overrides Sub RenderWebPart(ByVal output 
    As System.Web.UI.HtmlTextWriter)
        output.Write(SPEncode.HtmlEncode([Text]))
    End Sub

End Class
using System;
using System.ComponentModel;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Xml.Serialization;
using Microsoft.SharePoint;
using Microsoft.SharePoint.Utilities;
using Microsoft.SharePoint.WebPartPages;

namespace WebPartLibrary1CS
{
    [DefaultProperty("Text"),
        ToolboxData("<{0}:WebPart1 runat=server></{0}:WebPart1>"),
        XmlRoot(Namespace="WebPartLibrary1CS")]
    public class WebPart1 : Microsoft.SharePoint.WebPartPages.WebPart
    {
        private const string defaultText = "";
        private string text=defaultText;

        [Browsable(true),Category("Miscellaneous"),
            DefaultValue(defaultText),
            WebPartStorage(Storage.Personal),
            FriendlyName("Text"),Description("Text Property")]
        public string Text
        {
            get
            {
                return text;
            }

            set
            {
                text = value;
            }
        }
        
        public override ToolPart[] GetToolParts()
        {
            ToolPart[] toolparts = new ToolPart[2];
   CustomPropertyToolPart custom = new CustomPropertyToolPart();
            WebPartToolPart wptp = new WebPartToolPart();
            wptp.Expand(WebPartToolPart.Categories.Appearance);
            wptp.Hide(WebPartToolPart.Properties.FrameState);
            wptp.Hide(WebPartToolPart.Properties.FrameType);
            toolparts[0] = wptp;
            toolparts[1] = custom;

            return toolparts;
        }
        
        protected override void RenderWebPart(HtmlTextWriter output)
        {
            output.Write(SPEncode.HtmlEncode(Text));
        }
    }
}

线程安全性

该类型的任何公共 静态 (已共享 在 Visual Basic 中) 成员都是线程安全的。不保证任何实例成员都是线程安全的。

另请参阅

引用

CustomPropertyToolPart 成员

Microsoft.SharePoint.WebPartPages 命名空间