Compartilhar via


PageAdapter Classe

Definição

Adapta uma página da Web para um navegador específico e fornece a classe base da qual todos os adaptadores de página são herdados, 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
PageAdapter

Exemplos

O exemplo de código a seguir demonstra como derivar uma classe nomeada CustomPageAdapter da PageAdapter classe e substituir o RenderBeginHyperlink método. O RenderBeginHyperlink método adiciona um atributo nomeado src a um hiperlink, que contém uma referência à página atual. Todos os hiperlinks renderizados em páginas às quais CustomPageAdapter está anexado 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

Comentários

A PageAdapter classe é uma classe abstrata que adapta uma página da Web para uma classe específica de navegadores, definida pela linguagem de marcação que o navegador usa (por exemplo, HTML ou XHTML). Grande parte da adaptabilidade no comportamento de renderização pode ser encapsulada nas classes de gravador de texto especializadas derivadas da HtmlTextWriter classe, portanto, nem sempre é necessário fornecer um adaptador de página.

A maioria dos membros de adaptadores de página derivadas são chamados da Page classe ou de adaptadores de controle. Primeiro, os Page adaptadores de classe ou controle detectam a presença do adaptador de página derivada e, em seguida, 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 as propriedades definem cabeçalhos HTTP adicionais e HTTP GET e POST parâmetros que podem ser usados para variar o cache. Eles são chamados durante a inicialização de cache da Page classe.

  • O GetStatePersister método retorna um objeto que pode ser usado para persistir os estados de exibição e controle combinados da página. Ele será referenciado da PageStatePersister propriedade se um adaptador de página derivada estiver presente.

  • 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 retornará uma coleção das variáveis de postback se a página estiver no postback. Ele é chamado pelo .NET Framework em vez do Page.DeterminePostBackMode método se um adaptador de página derivada estiver presente.

  • Os RenderBeginHyperlink métodos e RenderEndHyperlink os métodos serão usados por adaptadores de controle para renderizar hiperlinks se um adaptador de página derivada estiver presente.

  • O RenderPostBackEvent método renderiza uma marca de cliente de hiperlink ou postback que pode enviar o formulário.

  • Os RegisterRadioButton métodos e os GetRadioButtonsByGroup métodos são usados por adaptadores de controle de botão de opção para fazer referência aos outros RadioButton controles em um grupo de botões de opção.

  • A ClientState propriedade fornece acesso aos estados de controle e exibição combinados do Page objeto por meio da propriedade interna ClientState da Page classe.

  • O TransformText método é usado por adaptadores de controle para executar a transformação de texto específica do dispositivo.

Construtores

PageAdapter()

Inicializa uma nova instância da classe PageAdapter.

Propriedades

Browser

Obtém uma referência aos recursos do navegador do cliente que está fazendo a solicitação HTTP atual.

(Herdado de ControlAdapter)
CacheVaryByHeaders

Obtém uma lista de cabeçalhos HTTP adicionais pela qual o cache é variado para a página da Web à qual este adaptador de página derivado está anexado.

CacheVaryByParams

Obtém uma lista de parâmetros adicionais de solicitações HTTP GET e POST pela qual o cache é variado para a página da Web à qual este adaptador de página derivado está anexado.

ClientState

Obtém uma cadeia de caracteres codificada que contém os dados de estados de exibição e controle da página da Web à qual este adaptador de página derivada está anexado.

Control

Obtém uma referência ao controle ao qual esse adaptador de controle está anexado.

(Herdado de ControlAdapter)
Page

Obtém uma referência à página em que o controle associado a esse adaptador está.

(Herdado de ControlAdapter)
PageAdapter

Obtém uma referência ao adaptador de página da página em que o controle associado está.

(Herdado de ControlAdapter)

Métodos

BeginRender(HtmlTextWriter)

Chamado antes da renderização de um controle. Em uma classe de adaptador derivada, gera marcas de abertura que são necessárias para um destino específico, mas não para navegadores HTML.

(Herdado de ControlAdapter)
CreateChildControls()

Cria os controles filho de destino específico de um controle de composição.

(Herdado de ControlAdapter)
DeterminePostBackMode()

Determina se a página da Web está em um postback e retorna uma coleção de nomes/valores das variáveis de postback.

DeterminePostBackModeUnvalidated()

Retorna uma coleção de nome-valor de dados que foram enviados à página usando um comando POST ou GET, sem executar a validação de solicitação do ASP.NET na solicitação.

EndRender(HtmlTextWriter)

Chamado depois da renderização de um controle. Em uma classe de adaptador derivada, gera marcas de fechamento que são necessárias para um destino específico, mas não para navegadores HTML.

(Herdado de ControlAdapter)
Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetPostBackFormReference(String)

Retorna um fragmento de código DHTML que o navegador do cliente pode usar para referenciar o formulário na página que foi postado.

GetRadioButtonsByGroup(String)

Recupera uma coleção de controles de botão de opção especificada pelo groupName.

GetStatePersister()

Retorna um objeto que é usado pela página da Web para manter os estados de exibição e controle.

GetType()

Obtém o Type da instância atual.

(Herdado de Object)
LoadAdapterControlState(Object)

Carrega informações sobre o estado do controle do adaptador que foram salvas pelo SaveAdapterControlState() durante a solicitação anterior à página em que o controle associado a esse adaptador de controle está.

(Herdado de ControlAdapter)
LoadAdapterViewState(Object)

Carrega informações sobre o estado de exibição do adaptador que foram salvas pelo SaveAdapterViewState() durante uma solicitação anterior à página em que o controle associado a esse adaptador de controle está.

(Herdado de ControlAdapter)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
OnInit(EventArgs)

Substitui o método OnInit(EventArgs) do controle associado.

(Herdado de ControlAdapter)
OnLoad(EventArgs)

Substitui o método OnLoad(EventArgs) do controle associado.

(Herdado de ControlAdapter)
OnPreRender(EventArgs)

Substitui o método OnPreRender(EventArgs) do controle associado.

(Herdado de ControlAdapter)
OnUnload(EventArgs)

Substitui o método OnUnload(EventArgs) do controle associado.

(Herdado de ControlAdapter)
RegisterRadioButton(RadioButton)

Adiciona um controle de botão de opção à coleção para um grupo de botões de opção especificado.

Render(HtmlTextWriter)

Gera a marcação específica para o destino para o controle ao qual o adaptador de controle está anexado.

(Herdado de ControlAdapter)
RenderBeginHyperlink(HtmlTextWriter, String, Boolean, String)

Renderiza uma marcação de hiperlink de abertura que inclui a URL de destino para o fluxo de resposta.

RenderBeginHyperlink(HtmlTextWriter, String, Boolean, String, String)

Renderiza uma marcação de hiperlink de abertura que inclui a URL de destino e uma chave de acesso para o fluxo de resposta.

RenderChildren(HtmlTextWriter)

Gera a marcação específica para o destino dos controles filho em um controle de composição ao qual o adaptador de controle está anexado.

(Herdado de ControlAdapter)
RenderEndHyperlink(HtmlTextWriter)

Renderiza uma marcação de hiperlink de fechamento para o fluxo de resposta.

RenderPostBackEvent(HtmlTextWriter, String, String, String, String)

Renderiza um evento de postback no fluxo de resposta como um hiperlink, incluindo o estado da exibição codificado e possivelmente criptografado e um destino de evento e argumento.

RenderPostBackEvent(HtmlTextWriter, String, String, String, String, String, String)

Renderiza um evento de postback no fluxo de resposta como um hiperlink, incluindo o estado da exibição codificado e possivelmente criptografado, um destino de evento e argumento, um parâmetro de página anterior e uma chave de acesso.

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 exibição codificado, um destino de evento e argumento, um parâmetro de página anterior e uma chave de acesso.

SaveAdapterControlState()

Salva informações de estado do controle do adaptador de controle.

(Herdado de ControlAdapter)
SaveAdapterViewState()

Salva informações de estado de exibição do adaptador de controle.

(Herdado de ControlAdapter)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)
TransformText(String)

Transforma o texto para o navegador de destino.

Aplica-se a

Confira também