HideDisabledControlAdapter 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.
Fornece capacidades de renderização para o controlo Web associado modificar a marcação ou comportamento padrão para um navegador específico.
public ref class HideDisabledControlAdapter : System::Web::UI::WebControls::Adapters::WebControlAdapter
public class HideDisabledControlAdapter : System.Web.UI.WebControls.Adapters.WebControlAdapter
type HideDisabledControlAdapter = class
inherit WebControlAdapter
Public Class HideDisabledControlAdapter
Inherits WebControlAdapter
- Herança
Exemplos
O exemplo de código seguinte mostra como estender a HideDisabledControlAdapter classe para mostrar um Label controlo num estado ativado e desativado. Este exemplo contém três partes:
Um adaptador derivado da HideDisabledControlAdapter classe.
O ficheiro .aspx que incorpora o Label controlo e o conteúdo específico do dispositivo.
Um ficheiro de navegador para ligar o adaptador a um tipo de dispositivo.
O seguinte exemplo de código demonstra como estender a HideDisabledControlAdapter classe.
using System;
using System.Web;
using System.Web.UI;
using System.Security.Permissions;
namespace Contoso
{
[AspNetHostingPermission(
SecurityAction.Demand,
Level = AspNetHostingPermissionLevel.Minimal)]
[AspNetHostingPermission(
SecurityAction.InheritanceDemand,
Level = AspNetHostingPermissionLevel.Minimal)]
public class HideDisabledControlContosoAdapter:
System.Web.UI.WebControls.Adapters.HideDisabledControlAdapter
{
// Link the Label control to the adapter.
protected new System.Web.UI.WebControls.Label Control
{
get
{
return (System.Web.UI.WebControls.Label)base.Control;
}
}
// Do not render the Contoso controls if Enabled is false.
protected override void Render(System.Web.UI.HtmlTextWriter writer)
{
if (Control.ID.StartsWith("Contoso"))
{
if (!Control.Enabled)
{
return;
}
}
base.Render(writer);
}
}
}
Imports System.Web
Imports System.Web.UI
Imports System.Security.Permissions
Namespace Contoso
<AspNetHostingPermission( _
SecurityAction.Demand, _
Level:=AspNetHostingPermissionLevel.Minimal)> _
<AspNetHostingPermission( _
SecurityAction.InheritanceDemand, _
Level:=AspNetHostingPermissionLevel.Minimal)> _
Public Class HideDisabledControlContosoAdapter
Inherits System.Web.UI.WebControls.Adapters.HideDisabledControlAdapter
Protected Overloads ReadOnly Property Control() As _
System.Web.UI.WebControls.Label
Get
Return CType( _
MyBase.Control, _
System.Web.UI.WebControls.Label)
End Get
End Property
' Do not render the control if Enabled is false.
Protected Overrides Sub Render(ByVal writer As HtmlTextWriter)
If (Control.ID.StartsWith("Contoso")) Then
If (Not Control.Enabled) Then
Return
End If
End If
MyBase.Render(writer)
End Sub
End Class
End Namespace
O exemplo de código seguinte demonstra como declarar um Label controlo com conteúdo específico de cada dispositivo.
<%@ page language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>HideDisabledControl Adapter</title>
<script runat="server">
void ServerButtonClick(Object source, EventArgs args)
{
if (Button1.Text == "Enable Label")
{
ContosoLabel1.Enabled = true;
Button1.Text = "Disable Label";
messageLabel.Text = "The label is <b>En</b>abled";
}
else
{
ContosoLabel1.Enabled = false;
Button1.Text = "Enable Label";
messageLabel.Text = "The label is <b>dis</b>abled";
}
}
</script>
</head>
<body style="background-color:silver">
<form id="Form1" runat="server">
<asp:Label id="ContosoLabel1"
text="Contoso Label"
WinCE:text="CE Label"
BorderWidth="3"
BorderStyle="Inset"
style="FONT-SIZE: xx-small"
runat="server">
</asp:Label>
<br />
<asp:Button id="Button1"
text="Disable Label"
OnClick="ServerButtonClick"
runat="server" />
<br />
<asp:Label id="messageLabel"
runat="server"
style="FONT-SIZE: xx-small"
AssociatedControlID="Button1">
<i>Select the button to disable the label.</i>
</asp:Label>
</form>
</body>
</html>
<%@ page language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head id="Head1" runat="server">
<title>HideDisabledControl Adapter</title>
<script runat="server">
Sub ServerButtonClick(ByVal source As Object, ByVal args As EventArgs)
If (Button1.Text.Equals("Enable Label")) Then
ContosoLabel1.Enabled = True
Button1.Text = "Disable Label"
messageLabel.Text = "The label is <b>En</b>abled"
Else
ContosoLabel1.Enabled = False
Button1.Text = "Enable Label"
messageLabel.Text = "The label is <b>dis</b>abled"
End If
End Sub
</script>
</head>
<body style="background-color:silver">
<form id="Form1" runat="server">
<asp:Label id="ContosoLabel1"
text="Contoso Label"
WinCE:text="CE Label"
BorderWidth="3"
BorderStyle="Inset"
style="FONT-SIZE: xx-small"
runat="server">
</asp:Label>
<br />
<asp:Button id="Button1"
text="Disable Label"
OnClick="ServerButtonClick"
runat="server" />
<br />
<asp:Label id="messageLabel"
runat="server"
style="FONT-SIZE: xx-small"
AssociatedControlID="Button1">
<i>Select the button to disable the label.</i>
</asp:Label>
</form>
</body>
</html>
O exemplo de código seguinte mostra como ligar o controlo Label ao adaptador personalizado para navegadores a correr em Windows CE .NET.
Observações
A HideDisabledControlAdapter classe adapta o controlo associado WebControl para modificar a marcação ou comportamento padrão para um navegador específico. Podes estender a HideDisabledControlAdapter classe para personalizar ainda mais a renderização do WebControl controlo.
Adaptadores são componentes compilados do .NET Framework que assumem uma ou mais fases do ciclo de vida de uma página ou controlo. A extensão da HideDisabledControlAdapter classe proporcionará acesso às fases do ciclo de vida do WebControl controlo. Para mais informações, consulte Visão Geral Arquitetónica do Comportamento de Controlo Adaptativo.
O pedido inicial de um adaptador faz com que o .NET Framework procure um adaptador mapeado para o controlo, dadas as características do navegador solicitante. Os ficheiros de definição do navegador são usados pela HttpBrowserCapabilities classe para identificar as características do navegador cliente e mapear o adaptador para o tipo de navegador. Para mais informações, consulte Visão Geral Arquitetónica do Comportamento de Controlo Adaptativo.
Construtores
| Name | Description |
|---|---|
| HideDisabledControlAdapter() |
Inicializa uma nova instância da HideDisabledControlAdapter classe. |
Propriedades
| Name | Description |
|---|---|
| Browser |
Obtém uma referência às capacidades do navegador do cliente que faz o pedido HTTP atual. (Herdado de ControlAdapter) |
| Control |
Obtém uma referência ao controlo Web ao qual este adaptador de controlo está ligado. (Herdado de WebControlAdapter) |
| IsEnabled |
Recebe um valor que indica se o controlo Web e todos os seus controlos pais estão ativados. (Herdado de WebControlAdapter) |
| Page |
Recebe uma referência para a página onde está o controlo associado a este adaptador. (Herdado de ControlAdapter) |
| PageAdapter |
Obtém uma referência ao adaptador de página da página onde reside o controlo associado. (Herdado de ControlAdapter) |
Métodos
| Name | Description |
|---|---|
| BeginRender(HtmlTextWriter) |
Chamado antes da renderização de um controlo. Numa classe adaptadora derivada, gera etiquetas de abertura que são exigidas por um destino específico mas não necessárias pelos navegadores HTML. (Herdado de ControlAdapter) |
| CreateChildControls() |
Cria os controlos filhos específicos do alvo para um controlo composto. (Herdado de ControlAdapter) |
| EndRender(HtmlTextWriter) |
Chamado após a renderização de um controlo. Numa classe adaptadora derivada, gera etiquetas de fecho que são exigidas por um destino específico mas não necessárias pelos navegadores HTML. (Herdado de ControlAdapter) |
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| GetHashCode() |
Serve como função de hash predefinida. (Herdado de Object) |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| LoadAdapterControlState(Object) |
Carrega a informação do estado de controlo do adaptador que foi guardada SaveAdapterControlState() durante um pedido anterior na página onde reside o controlo associado a este adaptador. (Herdado de ControlAdapter) |
| LoadAdapterViewState(Object) |
O adaptador carrega a informação de estado da visualização que foi guardada durante SaveAdapterViewState() um pedido anterior para a página onde reside o controlo associado a este adaptador de controlo. (Herdado de ControlAdapter) |
| MemberwiseClone() |
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| OnInit(EventArgs) |
Sobrepõe o OnInit(EventArgs) método para o controlo associado. (Herdado de ControlAdapter) |
| OnLoad(EventArgs) |
Sobrepõe o OnLoad(EventArgs) método para o controlo associado. (Herdado de ControlAdapter) |
| OnPreRender(EventArgs) |
Sobrepõe o OnPreRender(EventArgs) método para o controlo associado. (Herdado de ControlAdapter) |
| OnUnload(EventArgs) |
Sobrepõe o OnUnload(EventArgs) método para o controlo associado. (Herdado de ControlAdapter) |
| Render(HtmlTextWriter) |
Escreve o controlo Web associado no fluxo de saída como HTML. |
| RenderBeginTag(HtmlTextWriter) |
Cria a etiqueta inicial para o controlo Web na marcação que é transmitida para o navegador de destino. (Herdado de WebControlAdapter) |
| RenderChildren(HtmlTextWriter) |
Gera a marcação específica do alvo para os controlos filhos num controlo composto ao qual o adaptador de controlo está ligado. (Herdado de ControlAdapter) |
| RenderContents(HtmlTextWriter) |
Gera a marcação interna específica do alvo para o controlo Web ao qual o adaptador de controlo está ligado. (Herdado de WebControlAdapter) |
| RenderEndTag(HtmlTextWriter) |
Cria a etiqueta final para o controlo Web na marcação que é transmitida ao navegador de destino. (Herdado de WebControlAdapter) |
| SaveAdapterControlState() |
Guarda a informação do estado de controlo para o adaptador de controlo. (Herdado de ControlAdapter) |
| SaveAdapterViewState() |
Guarda a informação do estado da vista para o adaptador de controlo. (Herdado de ControlAdapter) |
| ToString() |
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |