CustomPropertyToolPart - Classe
Représente la partie d'outil par défaut qui est affichée dans le volet d'outils de composant WebPart qui implémente une ou plusieurs propriétés personnalisées (propriétés autres que celles fournies par la classe de base WebPart ).
Hiérarchie d’héritage
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
Espace de noms : Microsoft.SharePoint.WebPartPages
Assembly : Microsoft.SharePoint (dans Microsoft.SharePoint.dll)
Syntaxe
'Déclaration
<AspNetHostingPermissionAttribute(SecurityAction.LinkDemand, Level := AspNetHostingPermissionLevel.Minimal)> _
Public NotInheritable Class CustomPropertyToolPart _
Inherits ToolPart
'Utilisation
Dim instance As CustomPropertyToolPart
[AspNetHostingPermissionAttribute(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)]
public sealed class CustomPropertyToolPart : ToolPart
Remarques
Une propriété personnalisée s'affiche automatiquement à l'aide d'une instance de la classe CustomPropertyToolPart dans le volet de la propriété par défaut si la propriété est de type String, Boolean, Integerou Enum. Le tableau suivant décrit la façon dont chacun de ces types de propriété s'affiche dans la classe CustomPropertyToolPart dans le volet de la propriété.
Type de propriété |
Affiché dans le volet de propriétés en tant que |
---|---|
Booléen |
Case à cocher |
Énumération |
Liste déroulante |
Entier |
Zone de texte |
Chaîne |
Zone de texte |
DateTime |
Zone de texte |
Exemples
L'exemple de composant WebPart simple suivant illustre l'utilisation de la classe WebPartToolPart et la classe CustomPropertyToolPart pour personnaliser l'affichage des propriétés de composant WebPart dans le volet d'outils. L'exemple substitue à la méthode GetToolParts de la classe de base WebPart afin d'afficher les propriétés du composant WebPart standard dans le volet d'outils suivi par ses propriétés personnalisées, puis de développer des sections spécifiques de chaque composant outil et masquer des propriétés standard spécifiques. La classe WebPartToolPart affiche automatiquement les propriétés du composant WebPart standard, et la classe CustomPropertyToolPart affiche automatiquement les propriétés personnalisées du composant WebPart.
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));
}
}
}
Cohérence de thread
Tous les membres statique (Partagé dans Visual Basic)s publics de ce type sont thread-safe. Cela n’est pas garanti pour les membres d’instance.