SupportsPreviewControlAttribute SupportsPreviewControlAttribute SupportsPreviewControlAttribute SupportsPreviewControlAttribute Class

Definizione

Indica se per la finestra di progettazione del controllo è necessaria un'istanza di anteprima del controllo in fase di progettazione.Indicates whether a control designer requires a preview instance of the control at design time. Questa classe non può essere ereditata.This class cannot be inherited.

public ref class SupportsPreviewControlAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Class)]
public sealed class SupportsPreviewControlAttribute : Attribute
type SupportsPreviewControlAttribute = class
    inherit Attribute
Public NotInheritable Class SupportsPreviewControlAttribute
Inherits Attribute
Ereditarietà
SupportsPreviewControlAttributeSupportsPreviewControlAttributeSupportsPreviewControlAttributeSupportsPreviewControlAttribute
Attributi

Esempi

Esempio di codice seguente viene illustrato come contrassegnare una finestra di progettazione di controlli con il SupportsPreviewControlAttribute attributo.The following code example demonstrates how to mark a control designer with the SupportsPreviewControlAttribute attribute. L'esempio di codice deriva dal controllo server ASP.NET il Label classe e associa il controllo server ASP.NET con un'implementazione della finestra di progettazione di controlli personalizzati.The code example derives an ASP.NET server control from the Label class and associates the ASP.NET server control with a custom control designer implementation. Dichiarazione di classe della finestra di progettazione del controllo è contrassegnata con il SupportsPreviewControl attributo è impostato su true.The control designer class declaration is marked with the SupportsPreviewControl attribute set to true. La finestra di progettazione esegue l'override di GetDesignTimeHtml (metodo) e racchiude il codice HTML design-time per il controllo tag in corsivo.The control designer overrides the GetDesignTimeHtml method and encloses the design-time HTML for the control in italic tags.

using System;
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Web.UI;
using System.Web.UI.Design;
using System.Web.UI.Design.WebControls;
using System.Web.UI.WebControls;
using System.Reflection;

namespace ControlDesignerSamples.CS
{
    // Define a simple designer associated with a 
    // simple text web control.
	
    // Mark the designer with the SupportsPreviewControlAttribute set
    // to true.  This means the base.UsePreviewControl returns true,
    // and base.ViewControl returns a temporary preview copy of the control.
    [SupportsPreviewControl(true)]
    public class SimpleTextControlDesigner : TextControlDesigner
    {		
        // Override the base GetDesignTimeHtml method to display 
        // the design time text in italics.
        public override string GetDesignTimeHtml()
        {
            string html = String.Empty;
 
            try
            {
                // Initialize the return string to the default
                // design time html of the base TextControlDesigner.
                html = base.GetDesignTimeHtml();

                // Get the ViewControl for the associated control.
                Label ctrl = (Label)ViewControl;

                ctrl.Style.Add(HtmlTextWriterStyle.FontStyle, "Italic");
                html = base.GetDesignTimeHtml();

            }
            catch (System.Exception e)
            {
               if (String.IsNullOrEmpty(html))
               {
                   html = GetErrorDesignTimeHtml(e);
               }
            }
            
            return html;
        }

    }

    // Derive a simple Web control from Label to render a text string.
    // Associate this control with the SimpleTextControlDesigner.
    [DesignerAttribute("ControlDesignerSamples.CS.SimpleTextControlDesigner"),
    ToolboxData("<{0}:MyLabelControl Runat=\"Server\"><{0}:MyLabelControl>")]
    public class MyLabelControl : Label
    {
        // Use the Label control implementation, but associate
        // the derived class with the custom control designer.
    }
}
Imports Microsoft.VisualBasic
Imports System
Imports System.ComponentModel
Imports System.ComponentModel.Design
Imports System.Web.UI
Imports System.Web.UI.Design
Imports System.Web.UI.Design.WebControls
Imports System.Web.UI.WebControls
Imports System.Reflection

Namespace ControlDesignerSamples.VB

    ' Derive a simple Web control from Label to render a text string.
    ' Associate this control with the SimpleTextControlDesigner.
    <DesignerAttribute("ControlDesignerSamples.CS.SimpleTextControlDesigner"), _
    ToolboxData("<{0}:MyLabelControl Runat=""Server""><{0}:MyLabelControl>")> _
    Public Class MyLabelControl
        Inherits Label

        ' Use the Label control implementation, but associate
        ' the derived class with the custom control designer.
    End Class


    ' Mark the designer with the SupportsPreviewControlAttribute set
    ' to true.  This means the base.UsePreviewControl returns true,
    ' and base.ViewControl returns a temporary preview copy of the control.
    <SupportsPreviewControl(True)> _
    Public Class SimpleTextControlDesigner
        Inherits TextControlDesigner

        ' Override the base GetDesignTimeHtml method to display 
        ' the design time text in italics.
        Public Overrides Function GetDesignTimeHtml() As String
            Dim html As String = String.Empty

            Try
                ' Get the ViewControl for the associated control.
                Dim ctrl As Label = CType(ViewControl, Label)

                ' Set the default text, if necessary
                If ctrl.Text.Length = 0 Then
                    ctrl.Text = "Sample Text"
                End If

                ' Set the style to italic
                ctrl.Style.Add(HtmlTextWriterStyle.FontStyle, "italic")

                ' Let the base class create the HTML markup
                html = MyBase.GetDesignTimeHtml()
            Catch ex As Exception
                If String.IsNullOrEmpty(html) Then
                    ' Display the exception message
                    html = GetErrorDesignTimeHtml(ex)
                End If
            End Try

            Return html
        End Function

    End Class
End Namespace

Commenti

Applicare il SupportsPreviewControlAttribute attributo a una classe della finestra di progettazione di controllo per indicare il tipo di controllo di anteprima è supportato dalla finestra di progettazione controllo.Apply the SupportsPreviewControlAttribute attribute to a control designer class to indicate the type of preview control that is supported by the control designer. Usare questo attributo per modificare un controllo di anteprima per il rendering in fase di progettazione senza alterare l'effettiva istanza persistente del controllo associato.Use this attribute to change a preview control for design-time rendering without affecting the actual persisted instance of the associated control.

In genere, si specifica la SupportsPreviewControlAttribute quando si dichiara una classe della finestra di progettazione personalizzata che deriva dal ControlDesigner classe.Typically, you specify the SupportsPreviewControlAttribute when declaring a custom designer class that is derived from the ControlDesigner class. Il valore dei SupportsPreviewControl proprietà per il SupportsPreviewControlAttribute attributo determina il comportamento per il UsePreviewControl e ViewControl membri nella base ControlDesigner classe.The value of the SupportsPreviewControl property for the SupportsPreviewControlAttribute attribute determines the behavior for the UsePreviewControl and ViewControl members in the base ControlDesigner class.

Impostare il SupportsPreviewControl proprietà true per indicare che la finestra di progettazione utilizza una copia temporanea del controllo associato per generare il codice HTML design-time.Set the SupportsPreviewControl property to true to indicate that the designer uses a temporary copy of the associated control to generate the design-time HTML. Le modifiche apportate al controllo temporanea non sono persistenti.Changes to the temporary control are not persisted.

Impostare il SupportsPreviewControl proprietà false per indicare che la finestra di progettazione restituisce l'istanza del controllo, in particolare le Component proprietà, dal ViewControl (metodo).Set the SupportsPreviewControl property to false to indicate that the designer returns the control instance, specifically the Component property, from the ViewControl method. Le modifiche apportate all'oggetto controllo vengono rese persistenti.Changes to the control object are persisted.

Ad esempio, il CalendarDesigner classe è contrassegnata con il SupportsPreviewControlAttribute impostato su true.For example, the CalendarDesigner class is marked with the SupportsPreviewControlAttribute set to true. La finestra di progettazione Usa il controllo di anteprima con lo stile automatico attività di formattazione, che consente all'utente di visualizzare in anteprima vari stylesthat formattazione automatica può essere applicato al calendario.The designer uses the preview control with the automatic style formatting task, which allows the user to preview various autoformat stylesthat can be applied to the calendar. Quando l'utente seleziona stili di formattazione automatica diverso nell'interfaccia utente, lo schema selezionato lo stile viene applicato al controllo di anteprima.As the user selects different autoformat styles in the user interface, the selected style scheme is applied to the preview control. L'applicazione di un nuovo stile al controllo di anteprima non modifica lo schema che viene applicato all'istanza del Calendar controllo nella finestra di progettazione.Applying a new style to the preview control does not change the scheme that is applied to the instance of the Calendar control in the designer.

Se il SupportsPreviewControlAttribute non è specificato nella dichiarazione della finestra di progettazione del controllo, il ControlDesigner comportamento equivale a specificare il SupportsPreviewControl come false.If the SupportsPreviewControlAttribute is not specified in the control designer declaration, the ControlDesigner behavior is equivalent to specifying the SupportsPreviewControl as false.

Nota

Progettazione classi derivate dal ControlDesigner classe può eseguire l'override di UsePreviewControl e ViewControl membri e ignorare il SupportsPreviewControlAttribute attributo.Designer classes derived from the ControlDesigner class can override the UsePreviewControl and ViewControl members, and ignore the SupportsPreviewControlAttribute attribute. Per determinare il comportamento previsto per ViewControl e UsePreviewControl, vedere la documentazione di riferimento per la classe della finestra di progettazione del controllo derivata.To determine the expected behavior for ViewControl and UsePreviewControl, see the reference documentation for the derived control designer class.

Per informazioni generali sull'utilizzo di attributi, vedere Cenni preliminari sugli attributi e attributi.For general information about using attributes, see Attributes Overview and Attributes. Per altre informazioni sugli attributi in fase di progettazione, vedere gli attributi e supporto in fase di progettazione.For more information about design-time attributes, see Attributes and Design-Time Support.

Costruttori

SupportsPreviewControlAttribute(Boolean) SupportsPreviewControlAttribute(Boolean) SupportsPreviewControlAttribute(Boolean) SupportsPreviewControlAttribute(Boolean)

Inizializza una nuova istanza della classe SupportsPreviewControlAttribute e imposta il valore iniziale della proprietà SupportsPreviewControl.Initializes a new instance of the SupportsPreviewControlAttribute class and sets the initial value of the SupportsPreviewControl property.

Campi

Default Default Default Default

Ottiene un'istanza della classe SupportsPreviewControlAttribute impostata sul valore di anteprima predefinito.Gets an instance of the SupportsPreviewControlAttribute class that is set to the default preview value. Questo campo è di sola lettura.This field is read-only.

Proprietà

SupportsPreviewControl SupportsPreviewControl SupportsPreviewControl SupportsPreviewControl

Ottiene il valore che indica se per la finestra di progettazione del controllo è necessario un controllo di anteprima temporaneo in fase di progettazione.Gets a value indicating whether the control designer requires a temporary preview control at design time.

TypeId TypeId TypeId TypeId

Quando è implementata in una classe derivata, ottiene un identificatore univoco della classe Attribute.When implemented in a derived class, gets a unique identifier for this Attribute.

(Inherited from Attribute)

Metodi

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Determina se l'oggetto specificato rappresenta la stessa impostazione dell'attributo di anteprima dell'istanza corrente della classe SupportsPreviewControlAttribute.Determines whether the specified object represents the same preview attribute setting as the current instance of the SupportsPreviewControlAttribute class.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Viene restituito il codice hash per questa istanza della classe SupportsPreviewControlAttribute.Returns the hash code for this instance of the SupportsPreviewControlAttribute class.

GetType() GetType() GetType() GetType()

Ottiene l'oggetto Type dell'istanza corrente.Gets the Type of the current instance.

(Inherited from Object)
IsDefaultAttribute() IsDefaultAttribute() IsDefaultAttribute() IsDefaultAttribute()

Indica se l'istanza corrente della classe SupportsPreviewControlAttribute è impostata sul valore predefinito dell'attributo di anteprima.Indicates whether the current instance of the SupportsPreviewControlAttribute class is set to the default preview attribute value.

Match(Object) Match(Object) Match(Object) Match(Object)

Quando è sottoposto a override in una classe derivata, restituisce un valore che indica se questa istanza equivale a un oggetto specificato.When overridden in a derived class, returns a value that indicates whether this instance equals a specified object.

(Inherited from Attribute)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.Returns a string that represents the current object.

(Inherited from Object)

Implementazioni dell'interfaccia esplicita

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) _Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

Esegue il mapping di un set di nomi a un set corrispondente di ID dispatch.Maps a set of names to a corresponding set of dispatch identifiers.

(Inherited from Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr) _Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

Recupera le informazioni sul tipo relative a un oggetto, che possono essere usate per ottenere informazioni sul tipo relative a un'interfaccia.Retrieves the type information for an object, which can be used to get the type information for an interface.

(Inherited from Attribute)
_Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32) _Attribute.GetTypeInfoCount(UInt32)

Recupera il numero delle interfacce di informazioni sul tipo fornite da un oggetto (0 o 1).Retrieves the number of type information interfaces that an object provides (either 0 or 1).

(Inherited from Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) _Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

Fornisce l'accesso a proprietà e metodi esposti da un oggetto.Provides access to properties and methods exposed by an object.

(Inherited from Attribute)

Si applica a

Vedi anche