EditorPartDesigner Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Fornece suporte no tempo de design para controles EditorPart.
public ref class EditorPartDesigner : System::Web::UI::Design::WebControls::WebParts::PartDesigner
public class EditorPartDesigner : System.Web.UI.Design.WebControls.WebParts.PartDesigner
type EditorPartDesigner = class
inherit PartDesigner
Public Class EditorPartDesigner
Inherits PartDesigner
- Herança
-
EditorPartDesigner
Exemplos
O exemplo de código a seguir cria um controle personalizado EditorPart simples que permite que o usuário altere a ToolTip propriedade do controle de destino. O associado EditorPartDesigner valida o controle e substitui a caixa de texto de entrada do usuário em tempo de design por um rótulo explicando que ele está oculto.
using System;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.ComponentModel;
using System.Security.Permissions;
using System.Web.UI.Design.WebControls.WebParts;
/// <summary>
/// SecretEditorPart is a custom EditorPart control that
/// allows the end user to change the ToolTip property of
/// a control by typing the value into a TextBox.
/// SecretEditorPartDesigner hides the TextBox at design
/// time via the view control and replaces it with the
/// words "The textbox is now hidden."
/// </summary>
namespace Samples.AspNet.CS.Controls
{
[Designer(typeof(SecretEditorPartDesigner))]
public class SecretEditorPart : EditorPart
{
public CheckBox UseCustom = new CheckBox();
public TextBox TTTextBox = new TextBox();
protected override void CreateChildControls()
{
base.CreateChildControls();
Controls.Add(UseCustom);
Literal lApply = new Literal();
lApply.Text = "Apply custom ToolTip<br />";
Controls.Add(lApply);
Controls.Add(TTTextBox);
}
public override bool ApplyChanges()
{
EnsureChildControls();
try
{
WebPartToEdit.ToolTip = TTTextBox.Text;
}
catch
{
return false;
}
return true;
}
public override void SyncChanges()
{
// Abstract method not implemented for this example
return;
}
}
public class SecretEditorPartDesigner : EditorPartDesigner
{
public override void Initialize(IComponent component)
{
// Validate the associated control
if (! (component is SecretEditorPart))
{
string msg = "The associated control must be of type 'SecretEditorPart'";
throw new ArgumentException(msg);
}
base.Initialize(component);
}
public override string GetDesignTimeHtml()
{
// Access the view control.
SecretEditorPart sep = (SecretEditorPart)ViewControl;
// Hide the textbox.
sep.TTTextBox.Visible = false;
// Now generate the base rendering.
string designTimeHtml = base.GetDesignTimeHtml();
// Insert some text.
string segment = "</div>";
designTimeHtml = designTimeHtml.Replace(segment,
"The textbox is now hidden." + segment);
// Return the modified rendering.
return designTimeHtml;
}
}
}
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Web.UI.WebControls.WebParts
Imports System.ComponentModel
Imports System.Security.Permissions
Imports System.Web.UI.Design.WebControls.WebParts
' SecretEditorPart is a custom EditorPart control that
' allows the end user to change the ToolTip property of
' a control by typing the value into a TextBox.
' SecretEditorPartDesigner hides the TextBox at design
' time via the view control and replaces it with the
' words "The textbox is now hidden."
Namespace Samples.AspNet.VB.Controls
<Designer(GetType(SecretEditorPartDesigner))> _
Public Class SecretEditorPart
Inherits EditorPart
Public UseCustom As New CheckBox()
Public TTTextBox As New TextBox()
Protected Overrides Sub CreateChildControls()
MyBase.CreateChildControls()
Controls.Add(UseCustom)
Dim lApply As New Literal()
lApply.Text = "Apply custom ToolTip<br />"
Controls.Add(lApply)
Controls.Add(TTTextBox)
End Sub
Public Overrides Function ApplyChanges() As Boolean
EnsureChildControls()
Try
WebPartToEdit.ToolTip = TTTextBox.Text
Catch
Return False
End Try
Return True
End Function
Public Overrides Sub SyncChanges()
' Abstract method not implemented for this example
Return
End Sub
End Class
Public Class SecretEditorPartDesigner
Inherits EditorPartDesigner
Public Overrides Sub Initialize(component As IComponent)
' Validate the associated control
If Not (TypeOf component Is SecretEditorPart) Then
Dim msg As String = "The associated control must be of type 'SecretEditorPart'"
Throw New ArgumentException(msg)
End If
MyBase.Initialize(component)
End Sub
Public Overrides Function GetDesignTimeHtml() As String
' Access the view control.
Dim sep As SecretEditorPart = DirectCast(ViewControl, SecretEditorPart)
' Hide the textbox.
sep.TTTextBox.Visible = False
' Now generate the base rendering.
Dim designTimeHtml As String = MyBase.GetDesignTimeHtml()
' Insert some text.
Dim segment As String = "</div>"
designTimeHtml = designTimeHtml.Replace(segment, "The textbox is now hidden." & segment)
' Return the modified rendering.
Return designTimeHtml
End Function
End Class
End Namespace
Para que o controle personalizado seja renderizado, a página deve ter um WebPartManager controle , um EditorZone com um ZoneTemplate para que o controle resida e um WebPartZone que contenha um controle para que o personalizado EditorPart atue, conforme mostrado no exemplo de código a seguir.
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<%@ Register TagPrefix="ccl" Namespace="Samples.AspNet.CS.Controls" %>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>EditorPartDesigner Sample</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:WebPartManager ID="WebPartManager1" runat="server">
</asp:WebPartManager><br />
<asp:EditorZone ID="EditorZone1" runat="server" Enabled="true" >
<ZoneTemplate>
<ccl:SecretEditorPart ID="SEPart1" runat="server" />
</ZoneTemplate>
</asp:EditorZone>
<asp:WebPartZone ID="WebPartZone1" runat="server">
<ZoneTemplate>
<asp:Button ID="Button1" runat="server" Height="24px" Text="Button" />
</ZoneTemplate>
</asp:WebPartZone><br />
</div>
</form>
</body>
</html>
<%@ Page Language="VB" AutoEventWireup="true" CodeFile="Default.aspx.vb" Inherits="_Default" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<%@ Register TagPrefix="ccl" Namespace="Samples.AspNet.VB.Controls" %>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>EditorPartDesigner Sample</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:WebPartManager ID="WebPartManager1" runat="server">
</asp:WebPartManager><br />
<asp:EditorZone ID="EditorZone1" runat="server" Enabled="true" >
<ZoneTemplate>
<ccl:SecretEditorPart ID="SEPart1" runat="server" />
</ZoneTemplate>
</asp:EditorZone>
<asp:WebPartZone ID="WebPartZone1" runat="server">
<ZoneTemplate>
<asp:Button ID="Button1" runat="server" Height="24px" Text="Button" />
</ZoneTemplate>
</asp:WebPartZone><br />
</div>
</form>
</body>
</html>
Para que o EditorPart seja utilizável em tempo de execução, o modo de edição deve ser habilitado na página. O exemplo de código a seguir demonstra como fazer isso com um arquivo code-behind.
using System;
using System.Web.UI.WebControls.WebParts;
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
{
// Make the 'Edit' verb available so the EditorZone can render
WebPartManager mgr = WebPartManager.GetCurrentWebPartManager(Page);
mgr.DisplayMode = mgr.SupportedDisplayModes["Edit"];
}
}
}
Imports System.Web.UI.WebControls.WebParts
Public Partial Class _Default
Inherits System.Web.UI.Page
Protected Sub Page_Load(sender As Object, e As EventArgs)
If True Then
' Make the 'Edit' verb available so the EditorZone can render
Dim mgr As WebPartManager = WebPartManager.GetCurrentWebPartManager(Page)
mgr.DisplayMode = mgr.SupportedDisplayModes("Edit")
End If
End Sub
End Class
Comentários
EditorPartDesigner é uma implementação pública da PartDesigner classe base para fins de renderização EditorPart de controles em tempo de design. Ele adiciona a capacidade de transportar informações de zona do controle associado à exibição de design, mas não altera de outra forma a funcionalidade do controle pai.
Assim como acontece com outros designers de controle, você pode alterar a renderização em tempo de design de controles personalizados EditorPart herdando e EditorPartDesigner substituindo o GetDesignTimeHtml método . Se você quiser substituir o CreateViewControl método , inclua a implementação base para manter as informações de zona.
Construtores
EditorPartDesigner() |
Inicializa uma nova instância da classe EditorPartDesigner. |
Propriedades
ActionLists |
Obtém a coleção de listas de ação do designer de controle. (Herdado de ControlDesigner) |
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 automáticos predefinidos para exibir na caixa de diálogo Autoformatação do controle associado no tempo de design. (Herdado de ControlDesigner) |
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) |
RootDesigner |
Obtém o designer de controle da página Web Forms que contém o controle associado. (Herdado de ControlDesigner) |
SetTextualDefaultProperty |
Fornece suporte no tempo de design para controles EditorPart. (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, cada uma contendo uma ou mais definições de modelo. (Herdado de ControlDesigner) |
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. (Herdado de PartDesigner) |
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 |
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() |
Cria uma cópia do controle EditorPart associado a ser renderizado no tempo de design. |
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() |
Verifica se o controle reside em uma zona do tipo EditorZoneBase e, em seguida, obtém a marcação que é usada para representar o controle em tempo de design. |
GetDesignTimeHtml(DesignerRegionCollection) |
Recupera a marcação HTML para exibir o controle e preenche a coleção com as regiões de designer de controle atuais. (Herdado de ControlDesigner) |
GetEditableDesignerRegionContent(EditableDesignerRegion) |
Retorna o conteúdo de uma região editável do modo de exibição de tempo de design do controle associado. (Herdado de ControlDesigner) |
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) |
Recupera a marcação HTML que fornece informações sobre a exceção especificada. (Herdado de ControlDesigner) |
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) |
Associa o designer ao controle EditorPart 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 |
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) |
Adiciona ou remove propriedades da grade de Propriedades em um host de design em tempo de design ou fornece novas propriedades de tempo de design que podem corresponder às propriedades do controle associado. (Herdado de ControlDesigner) |
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) |
Especifica o conteúdo de uma região editável do controle em tempo de design. (Herdado de ControlDesigner) |
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) |