HtmlDesignerAttribute Class

Defines the HtmlDesigner attribute that is used on a Web Part custom property. It specifies if a custom property uses a custom builder and the URL of the builder, or if the custom property does not use any builder, including any default builder.

Inheritance Hierarchy

System.Object
  System.Attribute
    Microsoft.SharePoint.WebPartPages.HtmlDesignerAttribute

Namespace:  Microsoft.SharePoint.WebPartPages
Assembly:  Microsoft.SharePoint (in Microsoft.SharePoint.dll)
Available in Sandboxed Solutions: Yes
Available in SharePoint Online

Syntax

'Declaration
<AttributeUsageAttribute(AttributeTargets.Property)> _
<AspNetHostingPermissionAttribute(SecurityAction.LinkDemand, Level := AspNetHostingPermissionLevel.Minimal)> _
Public NotInheritable Class HtmlDesignerAttribute _
    Inherits Attribute
'Usage
Dim instance As HtmlDesignerAttribute
[AttributeUsageAttribute(AttributeTargets.Property)]
[AspNetHostingPermissionAttribute(SecurityAction.LinkDemand, Level = AspNetHostingPermissionLevel.Minimal)]
public sealed class HtmlDesignerAttribute : Attribute

Remarks

When a Web Part is opened in Microsoft Visual Studio 2005, the HtmlDesignerAttribute class is ignored. Only the default Visual Studio 2005 builders will be used.

Examples

The following code example shows a Web Part with a custom property that uses HtmlDesignerAttribute to define a static custom builder.

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;
using System.Xml;

namespace WebPartLibrary2
{
    
    [XmlRootAttribute(Namespace="WebPartLibrary2")]

    
    public class HtmlDesignerAttributeTestPart: WebPart
    {
        ///    Member variable for a property with 
        ///    HtmlDesignerAttribute defined for a custom builder
        private string customPropertyValue = "This Web Part has a custom property";
        
        /// <summary>
        ///        Use HtmlDesignerAttribute to define a static custom 
        ///        builder builder.aspx for the custom property.
        /// </summary>
        [WebPartStorage(Storage = Storage.Personal), 
        DefaultValue(""), 
        HtmlDesignerAttribute("http://myserver/builder.aspx")]
        public string CustomProperty
        {
            get
            {
                return customPropertyValue;
            }
            set
            {    
                customPropertyValue = value;
            }
        }
        
        /// <summary>
        ///        Renders the content of the HtmlDesignerAttributeTestPart.
        /// </summary>
        protected override void RenderWebPart (HtmlTextWriter output)
        {
            output.Write(SPEncode.HtmlEncode(CustomProperty));
        }
    }

}
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
Imports System.Xml

Namespace WebPartLibrary2

    <XmlRootAttribute(Namespace:="WebPartLibrary2")> _
    Public Class HtmlDesignerAttributeTestPart
        Inherits WebPart
        '''    Member variable for a property with 
        '''    HtmlDesignerAttribute defined for a custom builder
        Private customPropertyValue As String = "This Web Part has a custom property"

        ''' <summary>
        '''        Use HtmlDesignerAttribute to define a static custom 
        '''        builder builder.aspx for the custom property.
        ''' </summary>
        <WebPartStorage(Storage := Storage.Personal), DefaultValue(""), HtmlDesignerAttribute("http://myserver/builder.aspx")> _
        Public Property CustomProperty() As String
            Get
                Return customPropertyValue
            End Get
            Set(ByVal value As String)
                customPropertyValue = value
            End Set
        End Property

        ''' <summary>
        '''        Renders the content of the HtmlDesignerAttributeTestPart.
        ''' </summary>
        Protected Overrides Sub RenderWebPart(ByVal output As HtmlTextWriter)
            output.Write(SPEncode.HtmlEncode(CustomProperty))
        End Sub
    End Class

End Namespace

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

See Also

Reference

HtmlDesignerAttribute Members

Microsoft.SharePoint.WebPartPages Namespace