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 中) 成员都是线程安全的。不保证任何实例成员都是线程安全的。