LoginDesigner Classe

Definição

Fornece suporte em tempo de design num designer visual para o Login controlo do servidor Web.

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 seguinte mostra como estender a LoginDesigner classe para alterar a aparência dos controlos derivados do Login controlo no momento do projeto.

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

Sobrepõe-se MyLoginDesigner ao PreFilterProperties método para tornar a NamingContainer propriedade visível na grelha de Propriedades no momento do projeto. Sobrepõe-se ao GetDesignTimeHtml método de desenhar uma borda azul e tracejada em torno do controlo para tornar a sua extensão mais visível, se a BorderStyle propriedade do MyLogin controlo for o valor ou NotSetNone . Sobrepõe-se ao GetErrorDesignTimeHtml método para gerar a marcação para um marcador que inclui a mensagem de erro apresentada em texto vermelho e 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

Observações

O Login controlo apresenta uma interface de utilizador que permite ao utilizador aceder ao site anfitrião.

Num designer visual, quando se muda da vista de Fonte para a vista de Design, o código-fonte de marcação que descreve o Login controlo é analisado e uma versão em tempo de design do controlo é criada na superfície de design. Quando regressa à vista Source, o controlo de tempo de design é mantido no código-fonte da marcação e editado na marcação da página Web. A LoginDesigner classe fornece suporte em tempo de projeto para o Login controlo.

As LoginDesigner propriedades da classe fornecem a seguinte funcionalidade:

  • A ActionLists propriedade devolve 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 devolve uma coleção de esquemas de formatação para mostrar na caixa de diálogo Formatar Automaticamente .

  • A TemplateGroups propriedade devolve uma coleção de grupos de templates para os campos do controlo associado Login e do template de topo Login .

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

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

Construtores

Name Description
LoginDesigner()

Inicializa uma nova instância da LoginDesigner classe.

Propriedades

Name Description
ActionLists

Recebe a coleção da lista de ações do designer para este designer.

AllowResize

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

AllowResize

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

(Herdado de ControlDesigner)
AssociatedComponents

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

(Herdado de ComponentDesigner)
AutoFormats

Obtém a coleção de esquemas de formatação predefinidos para mostrar na caixa de diálogo Formatar Automaticamente .

Behavior
Obsoleto.

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

(Herdado de HtmlControlDesigner)
Component

Recebe o componente que este designer está a desenhar.

(Herdado de ComponentDesigner)
DataBindings

Obtém a recolha de ligações de dados para o controlo atual.

(Herdado de HtmlControlDesigner)
DataBindingsEnabled

Obtém um valor que indica se a ligação de dados é suportada pela região que contém o controlo associado.

(Herdado de ControlDesigner)
DesignerState

Obtém um objeto que é usado para persistir dados para o controlo associado no momento do projeto.

(Herdado de ControlDesigner)
DesignTimeElement
Obsoleto.

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

(Herdado de HtmlControlDesigner)
DesignTimeElementView
Obsoleto.

Obtém o objeto de view-control para o designer de controlo.

(Herdado de ControlDesigner)
DesignTimeHtmlRequiresLoadComplete
Obsoleto.

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

(Herdado de ControlDesigner)
Expressions

Obtém as associações de expressão para o controlo atual no momento do projeto.

(Herdado de HtmlControlDesigner)
HidePropertiesInTemplateMode

Recebe um valor que indica se as propriedades do controlo associado estão ocultas quando o controlo está em modo template.

(Herdado de ControlDesigner)
ID

Recebe ou define a cadeia ID do controlo.

(Herdado de ControlDesigner)
InheritanceAttribute

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

(Herdado de ComponentDesigner)
Inherited

Recebe um valor que indica se este componente é herdado.

(Herdado de ComponentDesigner)
InTemplateMode

Recebe um valor que indica se o controlo está em modo visualização de templates ou edição no host de design. A InTemplateMode propriedade é apenas de leitura.

(Herdado de ControlDesigner)
IsDirty
Obsoleto.

Recebe ou define um valor que indica se o controlo do servidor Web foi marcado como alterado.

(Herdado de ControlDesigner)
ParentComponent

Obtém o componente pai para este designer.

(Herdado de ComponentDesigner)
ReadOnly
Obsoleto.

Recebe ou define um valor que indica se as propriedades do controlo são apenas leitura no momento do projeto.

(Herdado de ControlDesigner)
RenderOuterTable

Recebe ou define um valor que especifica se o controlo LoginDesigner utiliza um contentor de tabela exterior para aplicar regras de estilo CSS inline.

RootDesigner

Obtém o designer de controlos para a página Web Forms que contém o controlo associado.

(Herdado de ControlDesigner)
ShadowProperties

Obtém uma coleção de valores de propriedades que sobrepõem as definições do utilizador.

(Herdado de ComponentDesigner)
ShouldCodeSerialize
Obsoleto.

Recebe ou define um valor que indica se deve criar uma declaração de campo para o controlo no ficheiro code-behind do documento de design atual durante a serialização.

(Herdado de HtmlControlDesigner)
Tag

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

(Herdado de ControlDesigner)
TemplateGroups

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

UsePreviewControl

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

Verbs

Obtém os verbos em tempo de design suportados pelo componente associado ao designer.

(Herdado de ComponentDesigner)
ViewControl

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

(Herdado de ControlDesigner)
ViewControlCreated

Recebe ou define um valor que indica se foi criado um View controlo para exibição na superfície de design.

(Herdado de ControlDesigner)
Visible

Obtém um valor que indica se o controlo é visível no momento do projeto.

(Herdado de ControlDesigner)

Métodos

Name Description
CreateChildControls()

Cria os controlos filhos desse CompositeControl controlo.

(Herdado de CompositeControlDesigner)
CreateErrorDesignTimeHtml(String, Exception)

Cria a marcação HTML para mostrar uma mensagem de erro de exceção especificada no momento do design.

(Herdado de ControlDesigner)
CreateErrorDesignTimeHtml(String)

Cria marcação HTML para mostrar uma mensagem de erro especificada no momento do design.

(Herdado de ControlDesigner)
CreatePlaceHolderDesignTimeHtml()

Fornece uma representação simples retangular que mostra o tipo e o ID do controlo.

(Herdado de ControlDesigner)
CreatePlaceHolderDesignTimeHtml(String)

Fornece uma representação simples retangular que mostra o tipo e o ID do controlo, bem como instruções ou informações adicionais especificadas.

(Herdado de ControlDesigner)
CreateViewControl()

Devolve uma cópia do controlo associado para visualização ou renderização na superfície de design.

(Herdado de ControlDesigner)
Dispose()

Liberta todos os recursos utilizados pelo ComponentDesigner.

(Herdado de ComponentDesigner)
Dispose(Boolean)

Liberta os recursos não geridos que são usados pelo HtmlControlDesigner objeto e, opcionalmente, liberta os recursos geridos.

(Herdado de HtmlControlDesigner)
DoDefaultAction()

Cria uma assinatura de método no ficheiro de código-fonte para o evento predefinido no componente e navega pelo cursor do utilizador até 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 representam os limites do controlo conforme exibido na superfície de design.

(Herdado de ControlDesigner)
GetDesignTimeHtml()

Obtém o HTML que é usado para representar o controlo no momento do design.

(Herdado de CompositeControlDesigner)
GetDesignTimeHtml(DesignerRegionCollection)

Recebe a marcação que é usada para renderizar o controlo associado no momento do design e preenche uma coleção de regiões designer.

GetEditableDesignerRegionContent(EditableDesignerRegion)

Devolve uma cópia serializada do modelo que é usada para renderizar o controlo associado no momento do design.

GetEmptyDesignTimeHtml()

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

(Herdado de ControlDesigner)
GetErrorDesignTimeHtml(Exception)

Fornece a marcação que é usada para renderizar o controlo associado no momento do projeto quando ocorreu um erro.

GetHashCode()

Serve como função de hash predefinida.

(Herdado de Object)
GetPersistenceContent()

Recupera a marcação HTML interna persistente do controlo no momento do design.

(Herdado de ControlDesigner)
GetPersistInnerHtml()
Obsoleto.

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

(Herdado de ControlDesigner)
GetService(Type)

Tenta recuperar o tipo de serviço especificado a partir do local do modo de design do componente do projetista.

(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 em tempo de design para o conteúdo e regiões do controlo associado.

(Herdado de ControlDesigner)
Initialize(IComponent)

Prepara o designer para visualizar, editar e desenhar o controlo associado.

InitializeExistingComponent(IDictionary)

Reinicializa um componente existente.

(Herdado de ComponentDesigner)
InitializeNewComponent(IDictionary)

Inicializa um componente recém-criado.

(Herdado de ComponentDesigner)
InitializeNonDefault()
Obsoleto.

Inicializa as definições de um componente importado que já está inicializado para definições diferentes das predefinidas.

(Herdado de ComponentDesigner)
Invalidate()

Invalida toda a área do controlo que é exibida na superfície de projeto e sinaliza ao projetista do controlo para redesenhar o controlo.

(Herdado de ControlDesigner)
Invalidate(Rectangle)

Invalida a área especificada do controlo que é exibida na superfície de design e sinaliza ao projetista do controlo para redesenhar o controlo.

(Herdado de ControlDesigner)
InvokeGetInheritanceAttribute(ComponentDesigner)

Obtém o InheritanceAttribute do especificado ComponentDesigner.

(Herdado de ComponentDesigner)
IsPropertyBound(String)
Obsoleto.

Recupera um valor que indica se a propriedade especificada no controlo associado está ligada a dados.

(Herdado de ControlDesigner)
Localize(IDesignTimeResourceWriter)

Utiliza o escritor de recursos fornecido para persistir as propriedades localizáveis do controlo associado a um recurso no host de design.

(Herdado de ControlDesigner)
MemberwiseClone()

Cria uma cópia superficial do atual Object.

(Herdado de Object)
OnAutoFormatApplied(DesignerAutoFormat)

Chamado quando um esquema de formatação automático pré-definido foi aplicado ao controlo associado.

(Herdado de ControlDesigner)
OnBehaviorDetaching()
Obsoleto.

Chamada quando um comportamento se dissocia do elemento.

(Herdado de HtmlControlDesigner)
OnBindingsCollectionChanged(String)
Obsoleto.

Chamada quando a coleção de ligação de dados muda.

(Herdado de ControlDesigner)
OnClick(DesignerRegionMouseEventArgs)

Chamada pelo anfitrião de design quando o utilizador clica no controlo associado no momento do design.

(Herdado de ControlDesigner)
OnComponentChanged(Object, ComponentChangedEventArgs)

Chamada quando o controlo associado muda.

(Herdado de ControlDesigner)
OnComponentChanging(Object, ComponentChangingEventArgs)

Representa o método que irá gerir o ComponentChanging evento para o controlo associado.

(Herdado de ControlDesigner)
OnControlResize()
Obsoleto.

Chamado quando o controlo do servidor Web associado foi redimensionado no host de design em tempo de design.

(Herdado de ControlDesigner)
OnPaint(PaintEventArgs)

Chamado quando o projetista de controlo desenha o controlo associado na superfície de projeto, se o CustomPaint valor for true.

(Herdado de ControlDesigner)
OnSetComponentDefaults()
Obsoleto.

Define as propriedades padrão do componente.

(Herdado de ComponentDesigner)
OnSetParent()

Proporciona uma forma de realizar processamento adicional quando o controlo associado está associado a um controlo parental.

(Herdado de HtmlControlDesigner)
PostFilterAttributes(IDictionary)

Permite a um designer alterar ou remover itens do conjunto de atributos que expõe através de um TypeDescriptor.

(Herdado de ComponentDesigner)
PostFilterEvents(IDictionary)

Permite a um designer alterar ou remover itens do conjunto de eventos que expõe através de um TypeDescriptor.

(Herdado de ComponentDesigner)
PostFilterProperties(IDictionary)

Permite a um designer alterar ou remover itens do conjunto de propriedades que expõe através de um TypeDescriptor.

(Herdado de ComponentDesigner)
PreFilterAttributes(IDictionary)

Permite a um designer adicionar ao conjunto de atributos que expõe através de um TypeDescriptor.

(Herdado de ComponentDesigner)
PreFilterEvents(IDictionary)

Define a lista de eventos expostos no momento do design para o TypeDescriptor objeto do componente.

(Herdado de HtmlControlDesigner)
PreFilterProperties(IDictionary)

Usado pelo designer para remover propriedades ou adicionar propriedades adicionais ao ecrã na grelha de Propriedades ou para sombrear propriedades do controlo associado.

RaiseComponentChanged(MemberDescriptor, Object, Object)

Notifica que IComponentChangeService este componente foi alterado.

(Herdado de ComponentDesigner)
RaiseComponentChanging(MemberDescriptor)

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

(Herdado de ComponentDesigner)
RaiseResizeEvent()
Obsoleto.

Eleva o OnControlResize() evento.

(Herdado de ControlDesigner)
RegisterClone(Object, Object)

Regista dados internos num controlo clonado.

(Herdado de ControlDesigner)
SetEditableDesignerRegionContent(EditableDesignerRegion, String)

Define uma região do controlo associado a partir de uma cópia serializada de um modelo de controlo.

SetRegionContent(EditableDesignerRegion, String)

Especifica o conteúdo de uma região editável na vista de design time do controlo.

(Herdado de ControlDesigner)
SetViewFlags(ViewFlags, Boolean)

Atribui a enumeração bit ViewFlags a bit especificada ao valor da bandeira especificado.

(Herdado de ControlDesigner)
ToString()

Devolve uma cadeia que representa o objeto atual.

(Herdado de Object)
UpdateDesignTimeHtml()

Atualiza a marcação HTML em tempo de design para o controlo associado do servidor Web chamando o GetDesignTimeHtml método.

(Herdado de ControlDesigner)

Implementações de Interface Explícita

Name Description
IDesignerFilter.PostFilterAttributes(IDictionary)

Para uma descrição deste elemento, veja o PostFilterAttributes(IDictionary) método.

(Herdado de ComponentDesigner)
IDesignerFilter.PostFilterEvents(IDictionary)

Para uma descrição deste elemento, veja o PostFilterEvents(IDictionary) método.

(Herdado de ComponentDesigner)
IDesignerFilter.PostFilterProperties(IDictionary)

Para uma descrição deste elemento, veja o PostFilterProperties(IDictionary) método.

(Herdado de ComponentDesigner)
IDesignerFilter.PreFilterAttributes(IDictionary)

Para uma descrição deste elemento, veja o PreFilterAttributes(IDictionary) método.

(Herdado de ComponentDesigner)
IDesignerFilter.PreFilterEvents(IDictionary)

Para uma descrição deste elemento, veja o PreFilterEvents(IDictionary) método.

(Herdado de ComponentDesigner)
IDesignerFilter.PreFilterProperties(IDictionary)

Para uma descrição deste elemento, veja o PreFilterProperties(IDictionary) método.

(Herdado de ComponentDesigner)
ITreeDesigner.Children

Para uma descrição deste membro, veja a propriedade Children .

(Herdado de ComponentDesigner)
ITreeDesigner.Parent

Para uma descrição deste membro, veja a propriedade Parent .

(Herdado de ComponentDesigner)

Aplica-se a

Ver também