LoginDesigner Classe

Definição

Fornece suporte em tempo de design em um designer visual para o controle do servidor Web Login.

public ref class LoginDesigner : System::Web::UI::Design::WebControls::CompositeControlDesigner
public class LoginDesigner : System.Web.UI.Design.WebControls.CompositeControlDesigner
type LoginDesigner = class
    inherit CompositeControlDesigner
Public Class LoginDesigner
Inherits CompositeControlDesigner
Herança

Exemplos

O exemplo de código a seguir mostra como estender a LoginDesigner classe para alterar a aparência dos controles derivados do Login controle em tempo de design.

O exemplo deriva o MyLogin controle do Login. O MyLogin é uma cópia do Login controle . O exemplo também deriva a MyLoginDesigner classe de LoginDesigner e aplica um DesignerAttribute atributo para o MyLoginDesigner no MyLogin controle .

O MyLoginDesigner substitui o PreFilterProperties método para tornar a NamingContainer propriedade visível na grade Propriedades em tempo de design. Ele substitui o GetDesignTimeHtml método para desenhar uma borda azul tracejada ao redor do controle para tornar sua extensão mais visível, se a BorderStyle propriedade do MyLogin controle for o NotSet valor ou None . Ele substitui o GetErrorDesignTimeHtml método para gerar a marcação de um espaço reservado que inclui a mensagem de erro renderizada em texto vermelho e em negrito.

using System;
using System.Web;
using System.Drawing;
using System.Web.UI.WebControls;
using System.Web.UI.Design.WebControls;
using System.Collections;
using System.ComponentModel;
using System.Security.Permissions;

namespace Examples.CS.WebControls.Design
{
    // The MyLogin is a copy of the Login.
    [AspNetHostingPermission(SecurityAction.Demand, 
        Level = AspNetHostingPermissionLevel.Minimal)]
    [AspNetHostingPermission(SecurityAction.InheritanceDemand, 
        Level = AspNetHostingPermissionLevel.Minimal)]
    [Designer(typeof(Examples.CS.WebControls.Design.MyLoginDesigner))]
    public class MyLogin : Login
    {
    } // MyLogin

    // Override members of the LoginDesigner.
    [ReflectionPermission(SecurityAction.Demand, Flags=ReflectionPermissionFlag.MemberAccess)]
    public class MyLoginDesigner : LoginDesigner
    {
        // Generate the design-time markup for the control when an error occurs.
        protected override string GetErrorDesignTimeHtml(Exception e) 
        {
            // Write the error message text in red, bold.
            string errorRendering =
                "<span style=\"font-weight:bold; color:Red; \">" +
                e.Message + "</span>";

            return CreatePlaceHolderDesignTimeHtml(errorRendering);
        } // GetErrorDesignTimeHtml

        // Shadow the control properties with design-time properties.
        protected override void PreFilterProperties(IDictionary properties)
        {
            // Call the base method first.
            base.PreFilterProperties(properties);

            // Make the NamingContainer visible in the Properties grid.
            PropertyDescriptor selectProp = 
                (PropertyDescriptor)properties["NamingContainer"];
            properties["NamingContainer"] =
                TypeDescriptor.CreateProperty(selectProp.ComponentType, 
                    selectProp, BrowsableAttribute.Yes);
        } // PreFilterProperties

        // Generate the design-time markup.
        public override string GetDesignTimeHtml()
        {
            // Make the control more visible in the designer.  If the border 
            // style is None or NotSet, change the border to a blue dashed line. 
            MyLogin myLoginCtl = (MyLogin)ViewControl;
            string markup = null;

            // Check if the border style should be changed.
            if (myLoginCtl.BorderStyle == BorderStyle.NotSet ||
                myLoginCtl.BorderStyle == BorderStyle.None)
            {
                BorderStyle oldBorderStyle = myLoginCtl.BorderStyle;
                Color oldBorderColor = myLoginCtl.BorderColor;

                // Set the design time properties and catch any exceptions.
                try
                {
                    myLoginCtl.BorderStyle = BorderStyle.Dashed;
                    myLoginCtl.BorderColor = Color.Blue;

                    // Call the base method to generate the markup.
                    markup = base.GetDesignTimeHtml();
                }
                catch (Exception ex)
                {
                    markup = GetErrorDesignTimeHtml(ex);
                }
                finally
                {
                    // It is not necessary to restore the border properties 
                    // to their original values because the ViewControl 
                    // was used to reference the associated control and the 
                    // UsePreviewControl was not overridden.  

                    // myLoginCtl.BorderStyle = oldBorderStyle;
                    // myLoginCtl.BorderColor = oldBorderColor;
                }
            }
            else
            {
                // Call the base method to generate the markup.
                markup = base.GetDesignTimeHtml();
            }

            return markup;
        } // GetDesignTimeHtml
    } // MyLoginDesigner
} // Examples.CS.WebControls.Design
Imports System.Web
Imports System.Drawing
Imports System.Web.UI.WebControls
Imports System.Web.UI.Design.WebControls
Imports System.Collections
Imports System.ComponentModel
Imports System.Security.Permissions

Namespace Examples.VB.WebControls.Design

    ' The MyLogin is a copy of the Login.
    <AspNetHostingPermission(SecurityAction.Demand, _
        Level:=AspNetHostingPermissionLevel.Minimal)> _
    <AspNetHostingPermission(SecurityAction.InheritanceDemand, _
        Level:=AspNetHostingPermissionLevel.Minimal)> _
    <Designer(GetType(Examples.VB.WebControls.Design.MyLoginDesigner))> _
    Public Class MyLogin
        Inherits Login
    End Class

    ' Override members of the LoginDesigner.
    <ReflectionPermission(SecurityAction.Demand, Flags:=ReflectionPermissionFlag.MemberAccess)> _
    Public Class MyLoginDesigner
        Inherits LoginDesigner

        ' Generate the design-time markup for the control when an error occurs.
        Protected Overrides Function GetErrorDesignTimeHtml( _
            ByVal ex As Exception) As String

            ' Write the error message text in red, bold.
            Dim errorRendering As String = _
                "<span style=""font-weight:bold; color:Red; "">" & _
                ex.Message & "</span>"

            Return CreatePlaceHolderDesignTimeHtml(errorRendering)

        End Function ' GetErrorDesignTimeHtml

        ' Shadow the control properties with design-time properties.
        Protected Overrides Sub PreFilterProperties( _
            ByVal properties As IDictionary)

            ' Call the base method first.
            MyBase.PreFilterProperties(properties)

            ' Make the NamingContainer visible in the Properties grid.
            Dim selectProp As PropertyDescriptor = _
                CType(properties("NamingContainer"), PropertyDescriptor)
            properties("NamingContainer") = _
                TypeDescriptor.CreateProperty(selectProp.ComponentType, _
                    selectProp, BrowsableAttribute.Yes)
        End Sub

        ' Generate the design-time markup.
        Public Overrides Function GetDesignTimeHtml() As String

            ' Make the control more visible in the designer.  If the border 
            ' style is None or NotSet, change the border to a blue dashed line. 
            Dim myLoginCtl As MyLogin = CType(ViewControl, MyLogin)
            Dim markup As String = Nothing

            ' Check if the border style should be changed.
            If (myLoginCtl.BorderStyle = BorderStyle.NotSet Or _
                myLoginCtl.BorderStyle = BorderStyle.None) Then

                Dim oldBorderStyle As BorderStyle = myLoginCtl.BorderStyle
                Dim oldBorderColor As Color = myLoginCtl.BorderColor

                ' Set the design time properties and catch any exceptions.
                Try
                    myLoginCtl.BorderStyle = BorderStyle.Dashed
                    myLoginCtl.BorderColor = Color.Blue

                    ' Call the base method to generate the markup.
                    markup = MyBase.GetDesignTimeHtml()

                Catch ex As Exception
                    markup = GetErrorDesignTimeHtml(ex)

                Finally
                    ' It is not necessary to restore the border properties 
                    ' to their original values because the ViewControl 
                    ' was used to reference the associated control and the 
                    ' UsePreviewControl was not overridden.  

                    ' myLoginCtl.BorderStyle = oldBorderStyle
                    ' myLoginCtl.BorderColor = oldBorderColor
                End Try

            Else
                ' Call the base method to generate the markup.
                markup = MyBase.GetDesignTimeHtml()
            End If

            Return markup

        End Function ' GetDesignTimeHtml
    End Class
End Namespace ' Examples.VB.WebControls.Design

Comentários

O Login controle exibe uma interface do usuário que permite que um usuário faça logon no site do host.

Em um designer visual, quando você alterna da exibição De origem para design, o código-fonte de marcação que descreve o Login controle é analisado e uma versão em tempo de design do controle é criada na superfície de design. Quando você volta para o Modo de exibição de origem, o controle de tempo de design é persistente para o código-fonte de marcação e editado na marcação da página da Web. A LoginDesigner classe fornece suporte de tempo de design para o Login controle.

As LoginDesigner propriedades da classe fornecem a seguinte funcionalidade:

  • A ActionLists propriedade retorna um DesignerActionListCollection objeto , que normalmente contém um objeto derivado da DesignerActionList classe para cada nível na árvore de herança do designer.

  • A AutoFormats propriedade retorna uma coleção de esquemas de formatação para exibição na caixa de diálogo Formato Automático .

  • A TemplateGroups propriedade retorna uma coleção de grupos de modelos para os campos do controle associado Login e o modelo de nível Login superior.

  • A UsePreviewControl propriedade sempre retorna true, indicando que o designer cria uma cópia temporária do associado Login para gerar a marcação de tempo de design.

Os LoginDesigner métodos de classe fornecem a seguinte funcionalidade:

Construtores

LoginDesigner()

Inicializa uma nova instância da classe LoginDesigner.

Propriedades

ActionLists

Obtém a coleção da lista de ações do designer para esse designer.

AllowResize

Obtém ou define um valor que especifica se o controle LoginDesigner permite o redimensionamento.

AllowResize

Obtém um valor que indica se o controle pode ser redimensionado no ambiente de tempo de design.

(Herdado de ControlDesigner)
AssociatedComponents

Obtém a coleção de componentes associados ao componente gerenciado pelo designer.

(Herdado de ComponentDesigner)
AutoFormats

Obtém a coleção de esquemas de formatação predefinidos a serem exibidos na caixa de diálogo Formatação Automática.

Behavior
Obsoleto.

Obtém ou define o comportamento DHTML associado ao designer.

(Herdado de HtmlControlDesigner)
Component

Obtém o componente que deste designer está criando.

(Herdado de ComponentDesigner)
DataBindings

Obtém a coleção de associações de dados para o controle atual.

(Herdado de HtmlControlDesigner)
DataBindingsEnabled

Obtém um valor que indica se a associação de dados tem suporte da região que contém o controle associado.

(Herdado de ControlDesigner)
DesignerState

Obtém um objeto usado para persistir os dados do controle associado em tempo de design.

(Herdado de ControlDesigner)
DesignTimeElement
Obsoleto.

Obtém o objeto em tempo de design que representa o controle associado ao objeto HtmlControlDesigner na superfície de design.

(Herdado de HtmlControlDesigner)
DesignTimeElementView
Obsoleto.

Obtém o objeto de controle de exibição do designer de controle.

(Herdado de ControlDesigner)
DesignTimeHtmlRequiresLoadComplete
Obsoleto.

Obtém um valor que indica se o host de design deve concluir o carregamento antes do método GetDesignTimeHtml poder ser chamado.

(Herdado de ControlDesigner)
Expressions

Obtém as associações de expressão para o controle atual em tempo de design.

(Herdado de HtmlControlDesigner)
HidePropertiesInTemplateMode

Obtém um valor que indica se as propriedades do controle associado são ocultadas quando o controle está no modo de modelo.

(Herdado de ControlDesigner)
ID

Obtém ou define a cadeia de caracteres da ID do controle.

(Herdado de ControlDesigner)
InheritanceAttribute

Obtém um atributo que indica o tipo de herança do componente associado.

(Herdado de ComponentDesigner)
Inherited

Obtém um valor que indica se este componente é herdado.

(Herdado de ComponentDesigner)
InTemplateMode

Obtém um valor que indica se o controle está em exibição de modelo ou em modo de edição no host de design. A propriedade InTemplateMode é somente leitura.

(Herdado de ControlDesigner)
IsDirty
Obsoleto.

Obtém ou define um valor que indica se o controle de servidor Web foi marcado como alterado.

(Herdado de ControlDesigner)
ParentComponent

Obtém o componente pai para este designer.

(Herdado de ComponentDesigner)
ReadOnly
Obsoleto.

Obtém ou define um valor que indica se as propriedades do controle são somente leitura em tempo de design.

(Herdado de ControlDesigner)
RenderOuterTable

Obtém ou define um valor que especifica se o controle LoginDesigner usa um contêiner de tabela externa para aplicar regras de estilo CSS embutidas.

RootDesigner

Obtém o designer de controle da página Web Forms que contém o controle associado.

(Herdado de ControlDesigner)
SetTextualDefaultProperty

Fornece suporte em tempo de design em um designer visual para o controle do servidor Web Login.

(Herdado de ComponentDesigner)
ShadowProperties

Obtém uma coleção de valores de propriedade que substituem as configurações do usuário.

(Herdado de ComponentDesigner)
ShouldCodeSerialize
Obsoleto.

Obtém ou define um valor que indica se é necessário criar uma declaração de campo para o controle no arquivo code-behind para o documento de design atual durante a serialização.

(Herdado de HtmlControlDesigner)
Tag

Obtém um objeto que representa o elemento de marcação HTML do controle associado.

(Herdado de ControlDesigner)
TemplateGroups

Obtém uma coleção de grupos de modelos para os campos do controle associado.

UsePreviewControl

Obtém um valor que indica se o designer deve usar uma cópia temporária em vez do controle real associado ao designer para gerar a marcação de tempo de design.

Verbs

Obtém os verbos de tempo de design com suporte pelo componente associado ao designer.

(Herdado de ComponentDesigner)
ViewControl

Obtém ou define um controle de servidor Web que pode ser usado para visualizar a marcação HTML de tempo de design.

(Herdado de ControlDesigner)
ViewControlCreated

Obtém ou define um valor que indica se um controle View foi criado para exibição na superfície de design.

(Herdado de ControlDesigner)
Visible

Obtém um valor que indica se o controle está visível em tempo de design.

(Herdado de ControlDesigner)

Métodos

CreateChildControls()

Cria os controles filho deste controle CompositeControl.

(Herdado de CompositeControlDesigner)
CreateErrorDesignTimeHtml(String)

Cria uma marcação HTML para exibir uma mensagem de erro especificada em tempo de design.

(Herdado de ControlDesigner)
CreateErrorDesignTimeHtml(String, Exception)

Cria a marcação HTML para exibir uma mensagem de erro de exceção especificada em tempo de design.

(Herdado de ControlDesigner)
CreatePlaceHolderDesignTimeHtml()

Fornece uma representação de espaço reservado retangular simples que exibe o tipo e a ID do controle.

(Herdado de ControlDesigner)
CreatePlaceHolderDesignTimeHtml(String)

Fornece uma representação de espaço reservado retangular simples que exibe o tipo e a ID do controle, bem como outras instruções ou informações especificadas.

(Herdado de ControlDesigner)
CreateViewControl()

Retorna uma cópia do controle associado para exibição ou renderização na superfície de design.

(Herdado de ControlDesigner)
Dispose()

Libera todos os recursos usados pelo ComponentDesigner.

(Herdado de ComponentDesigner)
Dispose(Boolean)

Libera os recursos não gerenciados usados pelo objeto HtmlControlDesigner e libera opcionalmente os recursos gerados.

(Herdado de HtmlControlDesigner)
DoDefaultAction()

Cria uma assinatura de método no arquivo de código-fonte para o evento padrão no componente e navega o cursor do usuário para essa localização.

(Herdado de ComponentDesigner)
Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetBounds()

Recupera as coordenadas do retângulo que representa os limites do controle como exibido na superfície de design.

(Herdado de ControlDesigner)
GetDesignTimeHtml()

Obtém o HTML usado para representar o controle em tempo de design.

(Herdado de CompositeControlDesigner)
GetDesignTimeHtml(DesignerRegionCollection)

Obtém a marcação que é usada para renderizar o controle associado em tempo de design e preenche uma coleção de regiões de designer.

GetEditableDesignerRegionContent(EditableDesignerRegion)

Retorna uma cópia serializada do modelo usado para renderizar o controle associado em tempo de design.

GetEmptyDesignTimeHtml()

Recupera a marcação HTML para representar um controle de servidor Web em tempo de design que não terá uma representação visual em tempo de execução.

(Herdado de ControlDesigner)
GetErrorDesignTimeHtml(Exception)

Fornecerá a marcação usada para renderizar o controle em tempo de design associado quando um erro tiver ocorrido.

GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetPersistenceContent()

Recupera a marcação HTML interna persistente do controle em tempo de design.

(Herdado de ControlDesigner)
GetPersistInnerHtml()
Obsoleto.

Recupera a marcação HTML interna persistente do controle.

(Herdado de ControlDesigner)
GetService(Type)

Tenta recuperar o tipo de serviço especificado do site no modo de design do componente do designer.

(Herdado de ComponentDesigner)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
GetViewRendering()

Recupera um objeto que contém a marcação de tempo de design do conteúdo e das regiões do controle associado.

(Herdado de ControlDesigner)
Initialize(IComponent)

Prepara o designer para exibir, editar e projetar o controle associado.

InitializeExistingComponent(IDictionary)

Reinicializa um componente existente.

(Herdado de ComponentDesigner)
InitializeNewComponent(IDictionary)

Inicializa um componente recém-criado.

(Herdado de ComponentDesigner)
InitializeNonDefault()
Obsoleto.
Obsoleto.

Inicializa as configurações de um componente importado que já foi inicializado para as configurações que não sejam os padrões.

(Herdado de ComponentDesigner)
Invalidate()

Invalida toda a área do controle que é exibida na superfície de design e envia um sinal para o designer de controle redesenhar o controle.

(Herdado de ControlDesigner)
Invalidate(Rectangle)

Invalida a área especificada do controle que é exibida na superfície de design e envia um sinal para o designer de controle redesenhar o controle.

(Herdado de ControlDesigner)
InvokeGetInheritanceAttribute(ComponentDesigner)

Obtém o InheritanceAttribute do ComponentDesigner especificado.

(Herdado de ComponentDesigner)
IsPropertyBound(String)
Obsoleto.

Recupera um valor que indica se a propriedade especificada no controle associado é associada a dados.

(Herdado de ControlDesigner)
Localize(IDesignTimeResourceWriter)

Usa o gravador de recurso fornecido para persistir as propriedades localizáveis do controle associado para um recurso no host de design.

(Herdado de ControlDesigner)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
OnAutoFormatApplied(DesignerAutoFormat)

Chamado quando um esquema de formatação automática predefinido é aplicado ao controle associado.

(Herdado de ControlDesigner)
OnBehaviorAttached()

Chamado quando o designer de controle está anexado a um objeto Behavior.

(Herdado de ControlDesigner)
OnBehaviorDetaching()
Obsoleto.

Chamado quando um comportamento é desassociado do elemento.

(Herdado de HtmlControlDesigner)
OnBindingsCollectionChanged(String)
Obsoleto.

Chamado quando a coleção de associação de dados é alterada.

(Herdado de ControlDesigner)
OnClick(DesignerRegionMouseEventArgs)

Chamado pelo host de design quando o usuário clica no controle associado em tempo de design.

(Herdado de ControlDesigner)
OnComponentChanged(Object, ComponentChangedEventArgs)

Chamado quando há uma alteração no controle associado.

(Herdado de ControlDesigner)
OnComponentChanging(Object, ComponentChangingEventArgs)

Representa o método que manipulará o evento ComponentChanging de um controle associado.

(Herdado de ControlDesigner)
OnControlResize()
Obsoleto.

Chamado quando o controle de servidor Web associado é redimensionado no host de design em tempo de design.

(Herdado de ControlDesigner)
OnPaint(PaintEventArgs)

Chamado quando o designer de controle desenha o controle associado na superfície de design, se o valor CustomPaint for true.

(Herdado de ControlDesigner)
OnSetComponentDefaults()
Obsoleto.
Obsoleto.

Define as propriedades padrão do componente.

(Herdado de ComponentDesigner)
OnSetParent()

Fornece uma maneira de realizar processamento adicional quando o controle associado é anexado a um controle pai.

(Herdado de HtmlControlDesigner)
PostFilterAttributes(IDictionary)

Permite que um designer altere ou remova itens do conjunto de atributos que ele expõe por meio de um TypeDescriptor.

(Herdado de ComponentDesigner)
PostFilterEvents(IDictionary)

Permite que um designer altere ou remova itens do conjunto de eventos que ele expõe por meio de um TypeDescriptor.

(Herdado de ComponentDesigner)
PostFilterProperties(IDictionary)

Permite que um designer altere ou remova itens do conjunto de propriedades que ele expõe por meio de um TypeDescriptor.

(Herdado de ComponentDesigner)
PreFilterAttributes(IDictionary)

Permite um designer seja adicionado ao conjunto de atributos que ele expõe por meio de um TypeDescriptor.

(Herdado de ComponentDesigner)
PreFilterEvents(IDictionary)

Define a lista de eventos que são expostos em tempo de design para o objeto TypeDescriptor para o componente.

(Herdado de HtmlControlDesigner)
PreFilterProperties(IDictionary)

Usado pelo designer para remover propriedades da exibição ou adicionar outras propriedades a ela na grade Propriedades ou para sombrear propriedades do controle associado.

RaiseComponentChanged(MemberDescriptor, Object, Object)

Notifica o IComponentChangeService de que este componente foi alterado.

(Herdado de ComponentDesigner)
RaiseComponentChanging(MemberDescriptor)

Notifica o IComponentChangeService de que este componente está prestes a ser alterado.

(Herdado de ComponentDesigner)
RaiseResizeEvent()
Obsoleto.

Aciona o evento OnControlResize().

(Herdado de ControlDesigner)
RegisterClone(Object, Object)

Registra os dados internos em um controle clonado.

(Herdado de ControlDesigner)
SetEditableDesignerRegionContent(EditableDesignerRegion, String)

Define uma região do controle associado de uma cópia serializada de um modelo de controle.

SetRegionContent(EditableDesignerRegion, String)

Especifica o conteúdo de uma região editável na exibição de tempo de design do controle.

(Herdado de ControlDesigner)
SetViewFlags(ViewFlags, Boolean)

Atribui a enumeração ViewFlags bit a bit especificada ao valor de sinalizador especificado.

(Herdado de ControlDesigner)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)
UpdateDesignTimeHtml()

Atualiza a marcação HTML de tempo de design do controle de servidor Web associado ao chamar o método GetDesignTimeHtml.

(Herdado de ControlDesigner)

Implantações explícitas de interface

IDesignerFilter.PostFilterAttributes(IDictionary)

Para obter uma descrição desse membro, consulte o método PostFilterAttributes(IDictionary).

(Herdado de ComponentDesigner)
IDesignerFilter.PostFilterEvents(IDictionary)

Para obter uma descrição desse membro, consulte o método PostFilterEvents(IDictionary).

(Herdado de ComponentDesigner)
IDesignerFilter.PostFilterProperties(IDictionary)

Para obter uma descrição desse membro, consulte o método PostFilterProperties(IDictionary).

(Herdado de ComponentDesigner)
IDesignerFilter.PreFilterAttributes(IDictionary)

Para obter uma descrição desse membro, consulte o método PreFilterAttributes(IDictionary).

(Herdado de ComponentDesigner)
IDesignerFilter.PreFilterEvents(IDictionary)

Para obter uma descrição desse membro, consulte o método PreFilterEvents(IDictionary).

(Herdado de ComponentDesigner)
IDesignerFilter.PreFilterProperties(IDictionary)

Para obter uma descrição desse membro, consulte o método PreFilterProperties(IDictionary).

(Herdado de ComponentDesigner)
ITreeDesigner.Children

Para obter uma descrição desse membro, consulte o propriedade Children.

(Herdado de ComponentDesigner)
ITreeDesigner.Parent

Para obter uma descrição desse membro, consulte o propriedade Parent.

(Herdado de ComponentDesigner)

Aplica-se a

Confira também