Control Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Define as propriedades, métodos e eventos que são partilhados por todos os controlos do servidor ASP.NET.
public ref class Control : IDisposable, System::ComponentModel::IComponent, System::Web::UI::IDataBindingsAccessor, System::Web::UI::IParserAccessor
public ref class Control : IDisposable, System::ComponentModel::IComponent, System::Web::UI::IControlBuilderAccessor, System::Web::UI::IControlDesignerAccessor, System::Web::UI::IDataBindingsAccessor, System::Web::UI::IExpressionsAccessor, System::Web::UI::IParserAccessor, System::Web::UI::IUrlResolutionService
public class Control : IDisposable, System.ComponentModel.IComponent, System.Web.UI.IDataBindingsAccessor, System.Web.UI.IParserAccessor
[System.ComponentModel.Bindable(true)]
[System.Web.UI.Themeable(false)]
public class Control : IDisposable, System.ComponentModel.IComponent, System.Web.UI.IControlBuilderAccessor, System.Web.UI.IControlDesignerAccessor, System.Web.UI.IDataBindingsAccessor, System.Web.UI.IExpressionsAccessor, System.Web.UI.IParserAccessor, System.Web.UI.IUrlResolutionService
type Control = class
interface IComponent
interface IDisposable
interface IParserAccessor
interface IDataBindingsAccessor
[<System.ComponentModel.Bindable(true)>]
[<System.Web.UI.Themeable(false)>]
type Control = class
interface IComponent
interface IDisposable
interface IParserAccessor
interface IUrlResolutionService
interface IDataBindingsAccessor
interface IControlBuilderAccessor
interface IControlDesignerAccessor
interface IExpressionsAccessor
Public Class Control
Implements IComponent, IDataBindingsAccessor, IDisposable, IParserAccessor
Public Class Control
Implements IComponent, IControlBuilderAccessor, IControlDesignerAccessor, IDataBindingsAccessor, IDisposable, IExpressionsAccessor, IParserAccessor, IUrlResolutionService
- Herança
-
Control
- Derivado
- Atributos
- Implementações
Exemplos
O exemplo seguinte demonstra um controlo de servidor personalizado que deriva da Control classe. A InnerContent classe sobrepõe o Control.Render método, verifica se a classe tem algum controlo filho na página e determina se o primeiro filho do controlo é um controlo literal. Se ambas as condições forem cumpridas, o método sobreposto escreve a string <HTML H2>Your Message:, o conteúdo do controlo literal e uma etiqueta de fecho </H2> na página Web Forms.
Importante
Este exemplo tem uma caixa de texto que aceita a entrada do utilizador, o que constitui uma potencial ameaça à segurança. Por defeito, as páginas Web do ASP.NET validam que a entrada do utilizador não inclui elementos de script ou HTML. Para mais informações, consulte Visão Geral dos Exploits de Scripts.
using System;
using System.Web;
using System.Web.UI;
namespace SimpleControlSamples {
public class InnerContent : Control {
[System.Security.Permissions.PermissionSet(System.Security.Permissions.SecurityAction.Demand, Name="Execution")]
protected override void Render(HtmlTextWriter output) {
if ( (HasControls()) && (Controls[0] is LiteralControl) ) {
output.Write("<H2>Your message : ");
Controls[0].RenderControl(output);
output.Write("</H2>");
}
}
}
}
Option Explicit
Option Strict
Imports System.Web
Imports System.Web.UI
Namespace SimpleControlSamples
Public Class InnerContent
Inherits Control
<System.Security.Permissions.PermissionSetAttribute(System.Security.Permissions.SecurityAction.Demand, Name:="Execution")> _
Protected Overrides Sub Render(output As HtmlTextWriter)
If HasControls() And TypeOf Controls(0) Is LiteralControl Then
output.Write("<H2>Your message : ")
Controls(0).RenderControl(output)
output.Write("</H2>")
End If
End Sub
End Class
End Namespace 'SimpleControlSamples
Observações
Esta é a principal classe de onde se deriva quando desenvolve controlos personalizados de servidor ASP.NET. Control não possui funcionalidades específicas da interface de utilizador (UI). Se estiver a criar um controlo que não tem interface, ou combina outros controlos que renderizam a sua própria interface, derive de Control. Se estiveres a criar um controlo que tem interface, deriva de WebControl ou qualquer controlo no System.Web.UI.WebControls namespace que forneça um ponto de partida apropriado para o teu controlo personalizado.
A classe Control é a classe base para todos os controlos ASP.NET servidor, incluindo controlos personalizados, controlos de utilizador e páginas. ASP.NET páginas são instâncias da classe Page, que herda da classe Control, e que tratam de pedidos para ficheiros com extensão .aspx.
A Control classe pode ser usada direta ou indiretamente como parte da interface do utilizador da sua aplicação Web e, como tal, deve ser analisada para garantir que as melhores práticas para escrever código seguro e proteger aplicações são seguidas.
Para informações gerais sobre estes temas, consulte Visão Geral das Ameaças à Segurança das Aplicações Web, Boas Práticas de Política de Segurança e Conceitos Chave de Segurança. Para informações mais específicas, veja Segurança dos Controlos Padrão, Como: Exibir Mensagens de Erro Seguras, Como: Proteger contra Explorações de Scripts numa Aplicação de Códigos Aplicando Codificação HTML a Strings, e Introdução aos Controlos de Validação.
Construtores
| Name | Description |
|---|---|
| Control() |
Inicializa uma nova instância da Control classe. |
Propriedades
| Name | Description |
|---|---|
| Adapter |
Recebe o adaptador específico do navegador para o controlo. |
| AppRelativeTemplateSourceDirectory |
Obtém ou define o diretório virtual relativo à aplicação do Page objeto ou UserControl que contém este controlo. |
| BindingContainer |
Obtém o controlo que contém a ligação de dados desse controlo. |
| ChildControlsCreated |
Recebe um valor que indica se os controlos filhos do controlo do servidor foram criados. |
| ClientID |
Obtém o ID de controlo para a marcação HTML gerada pelo ASP.NET. |
| ClientIDMode |
Obtém ou define o algoritmo que é usado para gerar o valor da ClientID propriedade. |
| ClientIDSeparator |
Obtém um valor de carácter que representa o carácter separador usado na ClientID propriedade. |
| Context |
Obtém o controlo do HttpContext objeto associado ao servidor para o pedido Web atual. |
| Controls |
Obtém um ControlCollection objeto que representa os controlos filhos de um servidor especificado na hierarquia da interface. |
| DataItemContainer |
Obtém uma referência ao contentor de nomes se o contentor implementar IDataItemContainer. |
| DataKeysContainer |
Obtém uma referência ao contentor de nomes se o contentor implementar IDataKeysControl. |
| DesignMode |
Obtém um valor que indica se um controlo está a ser usado numa superfície de projeto. |
| EnableTheming |
Recebe ou define um valor que indica se os temas se aplicam a este controlo. |
| EnableViewState |
Recebe ou define um valor que indica se o controlo do servidor mantém o seu estado de visualização, e o estado de vista de quaisquer controlos filhos que contém, para o cliente solicitante. |
| Events |
Obtém uma lista de delegados handler de eventos para o controlo. Esta propriedade é somente leitura. |
| HasChildViewState |
Recebe um valor que indica se os controlos filhos do controlo atual do servidor têm alguma configuração de estado de visualização guardada. |
| ID |
Obtém ou define o identificador programático atribuído ao controlo do servidor. |
| IdSeparator |
Faz com que o carácter seja usado para separar identificadores de controlo. |
| IsChildControlStateCleared |
Obtém um valor que indica se os controlos contidos neste controlo têm estado de controlo. |
| IsTrackingViewState |
Recebe um valor que indica se o controlo do servidor está a guardar alterações ao estado de visualização. |
| IsViewStateEnabled |
Recebe um valor que indica se o estado de visualização está ativado para este controlo. |
| LoadViewStateByID |
Recebe um valor que indica se o controlo participa no carregamento do seu estado de visualização em ID vez de index. |
| NamingContainer |
Obtém uma referência ao contentor de nomes do controlo do servidor, que cria um namespace único para diferenciar controlos de servidor com o mesmo ID valor de propriedade. |
| Page |
Obtém uma referência à Page instância que contém o controlo do servidor. |
| Parent |
Obtém uma referência ao controlo pai do controlo do servidor na hierarquia de controlo de página. |
| RenderingCompatibility |
Recebe um valor que especifica a versão ASP.NET com a qual o HTML renderizado será compatível. |
| Site |
Obtém informação sobre o contentor que aloja o controlo atual quando renderizado numa superfície de design. |
| SkinID |
Obtém ou fixa a pele para aplicar no controlo. |
| TemplateControl |
Recebe ou define uma referência ao template que contém esse controlo. |
| TemplateSourceDirectory |
Obtém o diretório virtual do Page ou UserControl que contém o controlo atual do servidor. |
| UniqueID |
Obtém o identificador único e hierarquicamente qualificado para o controlo do servidor. |
| ValidateRequestMode |
Recebe ou define um valor que indica se o controlo verifica a entrada do cliente do navegador para valores potencialmente perigosos. |
| ViewState |
Obtém um dicionário de informação de estado que permite guardar e restaurar o estado de visualização de um controlo de servidor através de múltiplos pedidos para a mesma página. |
| ViewStateIgnoresCase |
Obtém um valor que indica se o StateBag objeto é indistinto a maiúsculas e maiúsculas. |
| ViewStateMode |
Obtém ou define o modo view-state deste controlo. |
| Visible |
Recebe ou define um valor que indica se um controlo de servidor é renderizado como UI na página. |
Métodos
| Name | Description |
|---|---|
| AddedControl(Control, Int32) |
Chamado após um controlo filho ser adicionado à Controls coleção do Control objeto. |
| AddParsedSubObject(Object) |
Notifica o controlo do servidor que um elemento, seja XML ou HTML, foi analisado, e adiciona o elemento ao objeto do ControlCollection controlo do servidor. |
| ApplyStyleSheetSkin(Page) |
Aplica as propriedades de estilo definidas na folha de estilo da página ao controlo. |
| BeginRenderTracing(TextWriter, Object) |
Inicia o rastreio em tempo de design dos dados de renderização. |
| BuildProfileTree(String, Boolean) |
Recolhe informações sobre o controlo do servidor e entrega-as à Trace propriedade para serem exibidas quando o rastreamento for ativado para a página. |
| ClearCachedClientID() |
Define o valor em ClientID cache para |
| ClearChildControlState() |
Apaga a informação de estado de controlo dos controlos filhos do controlo do servidor. |
| ClearChildState() |
Apaga a informação de view-state e control-state de todos os controlos filhos do servidor. |
| ClearChildViewState() |
Elimina a informação de estado de visualização de todos os controlos filhos do controlo do servidor. |
| ClearEffectiveClientIDMode() |
Define a ClientIDMode propriedade da instância de controlo atual e de qualquer controlo filho para Inherit. |
| CreateChildControls() |
Chamada pelo framework de páginas ASP.NET para notificar os controlos de servidor que utilizam implementação baseada em composição para criar quaisquer controlos filhos que contenham em preparação para publicação ou renderização. |
| CreateControlCollection() |
Cria um novo ControlCollection objeto para armazenar os controlos filhos (tanto literais como de servidor) do controlo do servidor. |
| DataBind() |
Vincula uma fonte de dados ao controlo do servidor invocado e a todos os seus controlos filhos. |
| DataBind(Boolean) |
Vincula uma fonte de dados ao controlo do servidor invocado e a todos os seus controlos filhos com uma opção para elevar o DataBinding evento. |
| DataBindChildren() |
Vincula uma fonte de dados aos controlos filhos do controlo do servidor. |
| Dispose() |
Permite que o controlo do servidor realize a limpeza final antes de ser libertado da memória. |
| EndRenderTracing(TextWriter, Object) |
Termina o rastreio de tempo de design dos dados de renderização. |
| EnsureChildControls() |
Determina se o controlo do servidor contém controlos filhos. Se não o fizer, cria controlos filhos. |
| EnsureID() |
Cria um identificador para controlos que não têm um identificador atribuído. |
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| FindControl(String, Int32) |
Pesquisa no contentor de nomenclatura atual um controlo de servidor com o especificado |
| FindControl(String) |
Procura no contentor de nomenclatura atual um controlo de servidor com o parâmetro especificado |
| Focus() |
Define o foco de entrada num controlo. |
| GetDesignModeState() |
Obtém dados de tempo de projeto para um controlo. |
| GetHashCode() |
Serve como função de hash predefinida. (Herdado de Object) |
| GetRouteUrl(Object) |
Obtém a URL que corresponde a um conjunto de parâmetros de rota. |
| GetRouteUrl(RouteValueDictionary) |
Obtém a URL que corresponde a um conjunto de parâmetros de rota. |
| GetRouteUrl(String, Object) |
Obtém o URL que corresponde a um conjunto de parâmetros de rota e a um nome de rota. |
| GetRouteUrl(String, RouteValueDictionary) |
Obtém o URL que corresponde a um conjunto de parâmetros de rota e a um nome de rota. |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| GetUniqueIDRelativeTo(Control) |
Devolve a parte prefixada da UniqueID propriedade do controlo especificado. |
| HasControls() |
Determina se o controlo do servidor contém algum controlo filho. |
| HasEvents() |
Devolve um valor que indica se os eventos estão registados para o controlo ou para quaisquer controlos filhos. |
| IsLiteralContent() |
Determina se o controlo do servidor contém apenas conteúdo literal. |
| LoadControlState(Object) |
Restaura a informação do estado de controlo a partir de um pedido de página anterior que foi guardado pelo SaveControlState() método. |
| LoadViewState(Object) |
Restaura a informação de estado de visualização de um pedido anterior de página que foi guardado pelo SaveViewState() método. |
| MapPathSecure(String) |
Recupera o caminho físico para o qual um caminho virtual, seja absoluto ou relativo, mapeia. |
| MemberwiseClone() |
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| OnBubbleEvent(Object, EventArgs) |
Determina se o evento para o controlo do servidor é passado para a hierarquia de controlo do servidor UI da página. |
| OnDataBinding(EventArgs) |
Eleva o DataBinding evento. |
| OnInit(EventArgs) |
Eleva o Init evento. |
| OnLoad(EventArgs) |
Eleva o Load evento. |
| OnPreRender(EventArgs) |
Eleva o PreRender evento. |
| OnUnload(EventArgs) |
Eleva o Unload evento. |
| OpenFile(String) |
Recebe um Stream usado para ler um ficheiro. |
| RaiseBubbleEvent(Object, EventArgs) |
Atribui quaisquer fontes do evento e da sua informação ao pai do controlo. |
| RemovedControl(Control) |
Chamado após um controlo filho ser removido da Controls coleção do Control objeto. |
| Render(HtmlTextWriter) |
Envia conteúdo de controlo do servidor para um objeto fornecido HtmlTextWriter , que escreve o conteúdo a ser renderizado no cliente. |
| RenderChildren(HtmlTextWriter) |
Exporta o conteúdo dos filhos de um controlo de servidor para um objeto fornecido HtmlTextWriter , que escreve o conteúdo a ser renderizado no cliente. |
| RenderControl(HtmlTextWriter, ControlAdapter) |
Fornece conteúdo de controlo do servidor para um objeto fornecido HtmlTextWriter usando um objeto fornecido ControlAdapter . |
| RenderControl(HtmlTextWriter) |
Fornece conteúdo de controlo do servidor para um objeto fornecido HtmlTextWriter e armazena informação de rastreamento sobre o controlo se o rastreio estiver ativado. |
| ResolveAdapter() |
Faz com que o adaptador de controlo seja responsável por renderizar o controlo especificado. |
| ResolveClientUrl(String) |
Recebe um URL que pode ser usado pelo navegador. |
| ResolveUrl(String) |
Converte uma URL numa que seja utilizável no cliente solicitante. |
| SaveControlState() |
Guarda quaisquer alterações no estado de controlo do servidor que tenham ocorrido desde que a página foi publicada de volta no servidor. |
| SaveViewState() |
Guarda quaisquer alterações de estado de visualização no controlo do servidor que tenham ocorrido desde o momento em que a página foi publicada de volta no servidor. |
| SetDesignModeState(IDictionary) |
Define dados em tempo de projeto para um controlo. |
| SetRenderMethodDelegate(RenderMethod) |
Atribui um delegado handler de eventos para renderizar o controlo do servidor e o seu conteúdo no controlo pai. |
| SetTraceData(Object, Object, Object) |
Define os dados de rastreio para o rastreio em tempo de design dos dados de renderização, usando o objeto rastreado, a chave de dados de traço e o valor dos dados de traço. |
| SetTraceData(Object, Object) |
Define os dados de rastreio para o rastreio em tempo de design dos dados de renderização, usando a chave de dados de traço e o valor dos dados de traço. |
| ToString() |
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |
| TrackViewState() |
Causa o rastreio das alterações de estado de visualização no controlo do servidor para que possam ser armazenadas no objeto do StateBag controlo do servidor. Este objeto é acessível através da ViewState propriedade. |
evento
| Name | Description |
|---|---|
| DataBinding |
Ocorre quando o controlo do servidor se liga a uma fonte de dados. |
| Disposed |
Ocorre quando um controlo de servidor é libertado da memória, que é a última etapa do ciclo de vida do controlo do servidor quando uma página ASP.NET é solicitada. |
| Init |
Ocorre quando o controlo do servidor é inicializado, que é o primeiro passo no seu ciclo de vida. |
| Load |
Ocorre quando o controlo do servidor é carregado no Page objeto. |
| PreRender |
Ocorre depois do carregamento do Control objeto, mas antes da renderização. |
| Unload |
Ocorre quando o controlo do servidor é descarregado da memória. |
Implementações de Interface Explícita
Métodos da Extensão
| Name | Description |
|---|---|
| FindDataSourceControl(Control) |
Devolve a fonte de dados associada ao controlo de dados para o controlo especificado. |
| FindFieldTemplate(Control, String) |
Devolve o modelo de campo para a coluna especificada no contentor de nomenclatura do controlo especificado. |
| FindMetaTable(Control) |
Devolve o objeto metatable para o controlo de dados que contém. |