Condividi tramite


PageAdapter Classe

Definizione

Adatta una pagina Web per un browser specifico e fornisce la classe base da cui ereditano, direttamente o indirettamente, tutti gli adattatori di pagina.

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
Ereditarietà
PageAdapter

Esempio

Nell'esempio di codice seguente viene illustrato come derivare una classe denominata CustomPageAdapter dalla PageAdapter classe ed eseguire l'override del RenderBeginHyperlink metodo . Il RenderBeginHyperlink metodo aggiunge un attributo denominato src a un collegamento ipertestuale, che contiene un riferimento alla pagina corrente. Tutti i collegamenti ipertestuali visualizzati nelle pagine alle quali CustomPageAdapter è collegato avranno l'attributo src .

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

Commenti

La PageAdapter classe è una classe astratta che adatta una pagina Web per una classe specifica di browser, definita dal linguaggio di markup usato dal browser, ad esempio HTML o XHTML. Gran parte dell'adattabilità nel comportamento di rendering può essere incapsulata nelle classi di writer di testo specializzate che derivano dalla HtmlTextWriter classe , quindi non è sempre necessario fornire un adattatore di pagina.

La maggior parte dei membri degli adattatori di pagina derivati viene chiamata dalla Page classe o dagli adattatori di controllo. In primo luogo, gli Page adattatori di classe o di controllo rilevano la presenza dell'adattatore di pagina derivato e quindi chiamano il membro oppure forniscono la funzionalità se l'adattatore di pagina non è presente.

I membri della PageAdapter classe forniscono le funzionalità seguenti:

  • Le CacheVaryByHeaders proprietà e CacheVaryByParams definiscono intestazioni HTTP e parametri HTTP GET aggiuntivi POST che possono essere usati per variare la memorizzazione nella cache. Vengono chiamati durante l'inizializzazione della cache dalla Page classe .

  • Il GetStatePersister metodo restituisce un oggetto che può essere utilizzato per rendere persistenti gli stati di visualizzazione e controllo combinati della pagina. Viene fatto riferimento dalla PageStatePersister proprietà se è presente un adattatore di pagina derivato.

  • Il GetPostBackFormReference metodo fornisce un frammento di codice DHTML che può essere usato per fare riferimento ai moduli negli script.

  • Il DeterminePostBackMode metodo restituisce una raccolta delle variabili di postback se la pagina è in postback. Viene chiamato da .NET Framework anziché dal Page.DeterminePostBackMode metodo se è presente un adattatore di pagina derivato.

  • I RenderBeginHyperlink metodi e RenderEndHyperlink vengono utilizzati dagli adattatori di controllo per eseguire il rendering dei collegamenti ipertestuali se è presente un adattatore di pagina derivato.

  • Il metodo esegue il RenderPostBackEvent rendering di un tag client di postback o collegamento ipertestuale che può inviare il modulo.

  • I RegisterRadioButton metodi e GetRadioButtonsByGroup vengono utilizzati dagli adattatori di controllo pulsante di opzione per fare riferimento agli altri RadioButton controlli in un gruppo di pulsanti di opzione.

  • La ClientState proprietà fornisce l'accesso agli stati di controllo e visualizzazione combinati dell'oggetto Page tramite la proprietà interna ClientState della Page classe .

  • Il TransformText metodo viene usato dagli adattatori di controllo per eseguire una trasformazione del testo specifica del dispositivo.

Costruttori

Nome Descrizione
PageAdapter()

Inizializza una nuova istanza della classe PageAdapter.

Proprietà

Nome Descrizione
Browser

Ottiene un riferimento alle funzionalità del browser del client che effettua la richiesta HTTP corrente.

(Ereditato da ControlAdapter)
CacheVaryByHeaders

Ottiene un elenco di intestazioni HTTP aggiuntive in base alla quale la memorizzazione nella cache è varia per la pagina Web a cui è collegato l'adattatore di pagina derivato.

CacheVaryByParams

Ottiene un elenco di parametri aggiuntivi dalle richieste HTTP GET e POST in base alla quale la memorizzazione nella cache è varia per la pagina Web a cui è collegato l'adattatore di pagina derivato.

ClientState

Ottiene una stringa codificata che contiene i dati degli stati di visualizzazione e controllo della pagina Web a cui è collegato l'adattatore di pagina derivato.

Control

Ottiene un riferimento al controllo a cui è collegato l'adattatore di controllo.

(Ereditato da ControlAdapter)
Page

Ottiene un riferimento alla pagina in cui risiede il controllo associato all'adattatore.

(Ereditato da ControlAdapter)
PageAdapter

Ottiene un riferimento all'adattatore di pagina per la pagina in cui risiede il controllo associato.

(Ereditato da ControlAdapter)

Metodi

Nome Descrizione
BeginRender(HtmlTextWriter)

Chiamato prima del rendering di un controllo. In una classe adapter derivata genera tag di apertura richiesti da una destinazione specifica, ma non necessari per i browser HTML.

(Ereditato da ControlAdapter)
CreateChildControls()

Crea i controlli figlio specifici della destinazione per un controllo composito.

(Ereditato da ControlAdapter)
DeterminePostBackMode()

Determina se la pagina Web è in postback e restituisce una raccolta nome/valore delle variabili di postback.

DeterminePostBackModeUnvalidated()

Restituisce una raccolta nome-valore di dati inseriti nella pagina utilizzando un comando POST o GET, senza eseguire ASP.NET convalida della richiesta nella richiesta.

EndRender(HtmlTextWriter)

Chiamato dopo il rendering di un controllo. In una classe adapter derivata genera tag di chiusura richiesti da una destinazione specifica, ma non necessari per i browser HTML.

(Ereditato da ControlAdapter)
Equals(Object)

Determina se l'oggetto specificato è uguale all'oggetto corrente.

(Ereditato da Object)
GetHashCode()

Funge da funzione hash predefinita.

(Ereditato da Object)
GetPostBackFormReference(String)

Restituisce un frammento di codice DHTML che il browser client può utilizzare per fare riferimento al modulo nella pagina pubblicata.

GetRadioButtonsByGroup(String)

Recupera una raccolta di controlli pulsante di opzione specificati da groupName.

GetStatePersister()

Restituisce un oggetto utilizzato dalla pagina Web per mantenere gli stati di controllo e visualizzazione.

GetType()

Ottiene il Type dell'istanza corrente.

(Ereditato da Object)
LoadAdapterControlState(Object)

Carica le informazioni sullo stato del controllo adattatore salvate da SaveAdapterControlState() durante una richiesta precedente alla pagina in cui risiede il controllo associato a questo adattatore di controllo.

(Ereditato da ControlAdapter)
LoadAdapterViewState(Object)

Carica le informazioni sullo stato di visualizzazione dell'adattatore salvate da SaveAdapterViewState() durante una richiesta precedente alla pagina in cui risiede il controllo associato a questo adattatore di controllo.

(Ereditato da ControlAdapter)
MemberwiseClone()

Crea una copia superficiale del Objectcorrente.

(Ereditato da Object)
OnInit(EventArgs)

Esegue l'override del OnInit(EventArgs) metodo per il controllo associato.

(Ereditato da ControlAdapter)
OnLoad(EventArgs)

Esegue l'override del OnLoad(EventArgs) metodo per il controllo associato.

(Ereditato da ControlAdapter)
OnPreRender(EventArgs)

Esegue l'override del OnPreRender(EventArgs) metodo per il controllo associato.

(Ereditato da ControlAdapter)
OnUnload(EventArgs)

Esegue l'override del OnUnload(EventArgs) metodo per il controllo associato.

(Ereditato da ControlAdapter)
RegisterRadioButton(RadioButton)

Aggiunge un controllo pulsante di opzione all'insieme per un gruppo di pulsanti di opzione specificato.

Render(HtmlTextWriter)

Genera il markup specifico della destinazione per il controllo a cui è collegato l'adattatore di controllo.

(Ereditato da ControlAdapter)
RenderBeginHyperlink(HtmlTextWriter, String, Boolean, String, String)

Esegue il rendering di un tag collegamento ipertestuale di apertura che include l'URL di destinazione e una chiave di accesso al flusso di risposta.

RenderBeginHyperlink(HtmlTextWriter, String, Boolean, String)

Esegue il rendering di un tag collegamento ipertestuale di apertura che include l'URL di destinazione per il flusso di risposta.

RenderChildren(HtmlTextWriter)

Genera il markup specifico della destinazione per i controlli figlio in un controllo composito a cui è collegato l'adattatore di controllo.

(Ereditato da ControlAdapter)
RenderEndHyperlink(HtmlTextWriter)

Esegue il rendering di un tag collegamento ipertestuale di chiusura nel flusso di risposta.

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

Esegue il rendering di un evento di postback nel flusso di risposta come collegamento ipertestuale, inclusi lo stato di visualizzazione codificato, una destinazione e un argomento dell'evento, un parametro di pagina precedente e una chiave di accesso.

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

Esegue il rendering di un evento di postback nel flusso di risposta come collegamento ipertestuale, inclusi lo stato di visualizzazione codificato ed eventualmente crittografato, una destinazione e un argomento dell'evento, un parametro di pagina precedente e una chiave di accesso.

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

Esegue il rendering di un evento di postback nel flusso di risposta come collegamento ipertestuale, inclusi lo stato di visualizzazione codificato ed eventualmente crittografato, nonché la destinazione e l'argomento dell'evento.

SaveAdapterControlState()

Salva le informazioni sullo stato del controllo per l'adattatore di controllo.

(Ereditato da ControlAdapter)
SaveAdapterViewState()

Salva le informazioni sullo stato di visualizzazione per l'adattatore di controllo.

(Ereditato da ControlAdapter)
ToString()

Restituisce una stringa che rappresenta l'oggetto corrente.

(Ereditato da Object)
TransformText(String)

Trasforma il testo per il browser di destinazione.

Si applica a

Vedi anche