PageAdapter 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.
Adapta uma página Web para um navegador específico e fornece a classe base da qual todos os adaptadores de página herdam, direta ou indiretamente.
public ref class PageAdapter abstract : System::Web::UI::Adapters::ControlAdapter
public abstract class PageAdapter : System.Web.UI.Adapters.ControlAdapter
type PageAdapter = class
inherit ControlAdapter
Public MustInherit Class PageAdapter
Inherits ControlAdapter
- Herança
Exemplos
O exemplo de código seguinte demonstra como derivar uma classe nomeada CustomPageAdapter a partir da PageAdapter classe e sobrepor o RenderBeginHyperlink método. O RenderBeginHyperlink método adiciona um atributo nomeado src a um hiperlink, que contém uma referência para a página atual. Todos os hiperlinks renderizados nas páginas às quais CustomPageAdapter está anexada terão o src atributo.
using System;
using System.IO;
using System.Web;
using System.Web.UI;
using System.Web.UI.Adapters;
// A derived PageAdapter class.
public class CustomPageAdapter : PageAdapter
{
// Override RenderBeginHyperlink to add an attribute that
// references the referring page.
public override void RenderBeginHyperlink(
HtmlTextWriter writer, string targetUrl,
bool encodeUrl, string softkeyLabel,
string accessKey )
{
string url = null;
// Add the src attribute, if referring page URL is available.
if( Page != null && Page.Request != null &&
Page.Request.Url != null )
{
url = Page.Request.Url.AbsoluteUri;
if( encodeUrl )
url = HttpUtility.HtmlAttributeEncode( url );
writer.AddAttribute( "src", url );
}
// Add the accessKey attribute, if caller requested.
if( accessKey != null && accessKey.Length == 1 )
writer.AddAttribute( "accessKey", accessKey );
// Add the href attribute, encode the URL if requested.
if( encodeUrl )
url = HttpUtility.HtmlAttributeEncode( targetUrl );
else
url = targetUrl;
writer.AddAttribute( "href", url );
// Render the hyperlink opening tag with the added attributes.
writer.RenderBeginTag( "a" );
}
}
Imports System.IO
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.Adapters
' A derived PageAdapter class.
Public Class CustomPageAdapter
Inherits PageAdapter
' Override RenderBeginHyperlink to add an attribute that
' references the referring page.
Public Overrides Sub RenderBeginHyperlink( _
ByVal writer As HtmlTextWriter, ByVal targetUrl As String, _
ByVal encodeUrl As Boolean, ByVal softkeyLabel As String, _
ByVal accessKey As String)
Dim url As String
' Add the src attribute, if referring page URL is available.
If Not (Page Is Nothing) Then
If Not (Page.Request Is Nothing) Then
If Not (Page.Request.Url Is Nothing) Then
url = Page.Request.Url.AbsoluteUri
If encodeUrl Then
url = HttpUtility.HtmlAttributeEncode(url)
End If
writer.AddAttribute("src", url)
End If
End If
End If
' Render the accessKey attribute, if requested.
If Not (accessKey Is Nothing) Then
If accessKey.Length = 1 Then
writer.AddAttribute("accessKey", accessKey)
End If
End If
' Add the href attribute, encode the URL if requested.
If (encodeUrl) Then
url = HttpUtility.HtmlAttributeEncode(targetUrl)
Else
url = targetUrl
End If
writer.AddAttribute("href", url)
' Render the hyperlink opening tag with the added attributes.
writer.RenderBeginTag("a")
End Sub
End Class
Observações
A PageAdapter classe é uma classe abstrata que adapta uma página Web para uma classe específica de navegadores, definida pela linguagem de marcação que o navegador utiliza (por exemplo, HTML ou XHTML). Grande parte da adaptabilidade no comportamento de renderização pode ser encapsulada nas classes especializadas de escritores de texto que derivam da HtmlTextWriter classe, pelo que nem sempre é necessário fornecer um adaptador de página.
A maioria dos membros dos adaptadores de página derivados é chamada da Page classe ou de adaptadores de controlo. Primeiro, os Page adaptadores de classe ou controlo detetam a presença do adaptador de página derivado e depois chamam o membro, ou fornecem a funcionalidade se o adaptador de página não estiver presente.
Os membros da PageAdapter classe fornecem a seguinte funcionalidade:
As CacheVaryByHeaders propriedades e CacheVaryByParams definem cabeçalhos HTTP adicionais e
GETHTTP ePOSTparâmetros que podem ser usados para variar a cache. São chamados durante a inicialização da cache a partir da Page classe.O GetStatePersister método devolve um objeto que pode ser usado para persistir os estados combinados de vista e controlo da página. É referenciado pela PageStatePersister propriedade se estiver presente um adaptador de página derivado.
O GetPostBackFormReference método fornece um fragmento de código DHTML que pode ser usado para referenciar formulários em scripts.
O DeterminePostBackMode método devolve uma coleção das variáveis de postback se a página estiver em postback. É chamada pelo .NET Framework em vez do método Page.DeterminePostBackMode se houver um adaptador de página derivado.
Os RenderBeginHyperlink métodos and RenderEndHyperlink são usados por adaptadores de controlo para renderizar hiperligações caso exista um adaptador de página derivado.
O RenderPostBackEvent método gera um hyperlink ou uma etiqueta de cliente postback que pode submeter o formulário.
Os RegisterRadioButton métodos and GetRadioButtonsByGroup são usados por adaptadores de controlo de botões de rádio para referenciar os outros RadioButton controlos num grupo de botões de rádio.
A ClientState propriedade proporciona acesso aos estados combinados de controlo e vista do Page objeto através da propriedade interna
ClientStateda Page classe.O TransformText método é utilizado por adaptadores de controlo para realizar transformações de texto específicas de cada dispositivo.
Construtores
| Name | Description |
|---|---|
| PageAdapter() |
Inicializa uma nova instância da PageAdapter 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) |
| CacheVaryByHeaders |
Obtém uma lista de cabeçalhos HTTP adicionais pelos quais a cache é variada para a página Web à qual este adaptador de página derivado está ligado. |
| CacheVaryByParams |
Obtém uma lista de parâmetros adicionais dos pedidos HTTP GET e POST pelos quais a cache é variada para a página Web à qual este adaptador de página derivado está ligado. |
| ClientState |
Obtém uma cadeia codificada que contém os dados de vista e estado de controlo da página Web à qual este adaptador de página derivado está ligado. |
| Control |
Obtém uma referência ao controlo ao qual este adaptador de controlo está ligado. (Herdado de ControlAdapter) |
| 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) |
| DeterminePostBackMode() |
Determina se a página Web está em postback e devolve uma coleção de nomes/valores das variáveis de postback. |
| DeterminePostBackModeUnvalidated() |
Devolve uma coleção nome-valor de dados que foi publicada na página usando um comando POST ou GET, sem realizar a validação do pedido ASP.NET no pedido. |
| 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) |
| GetPostBackFormReference(String) |
Devolve um fragmento de código DHTML que o navegador cliente pode usar para referenciar o formulário na página publicada. |
| GetRadioButtonsByGroup(String) |
Recupera uma coleção de controlos de botão de rádio especificados por |
| GetStatePersister() |
Devolve um objeto que é usado pela página Web para manter os estados de controlo e de visualização. |
| 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) |
| RegisterRadioButton(RadioButton) |
Adiciona um controlo de botão de rádio à coleção para um grupo de botões de rádio especificado. |
| Render(HtmlTextWriter) |
Gera a marcação específica do alvo para o controlo ao qual o adaptador de controlo está ligado. (Herdado de ControlAdapter) |
| RenderBeginHyperlink(HtmlTextWriter, String, Boolean, String, String) |
Renderiza uma etiqueta de hiperligação de abertura que inclui a URL de destino e uma chave de acesso ao fluxo de resposta. |
| RenderBeginHyperlink(HtmlTextWriter, String, Boolean, String) |
Renderiza uma etiqueta de hiperligação de abertura que inclui o URL alvo do fluxo de resposta. |
| 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) |
| RenderEndHyperlink(HtmlTextWriter) |
Renderiza uma etiqueta de hiperligação de encerramento para o fluxo de resposta. |
| RenderPostBackEvent(HtmlTextWriter, String, String, String, String, String, String, Boolean) |
Renderiza um evento de postback no fluxo de resposta como um hiperlink, incluindo o estado da vista codificada, um alvo e argumento do evento, um parâmetro da página anterior e uma chave de acesso. |
| RenderPostBackEvent(HtmlTextWriter, String, String, String, String, String, String) |
Renderiza um evento de postback no fluxo de resposta como um hiperlink, incluindo o estado de visualização codificado e possivelmente encriptado, um destino e argumento do evento, um parâmetro da página anterior e uma chave de acesso. |
| RenderPostBackEvent(HtmlTextWriter, String, String, String, String) |
Renderiza um evento de postback no fluxo de resposta como um hiperlink, incluindo o estado da visualização codificada e possivelmente encriptada, e o destino e argumento do evento. |
| 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) |
| TransformText(String) |
Transforma o texto para o navegador de destino. |