PageAdapter Klasa

Definicja

Dostosowuje stronę sieci Web dla określonej przeglądarki i udostępnia klasę bazową, z której wszystkie karty stron dziedziczą bezpośrednio lub pośrednio.

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
Dziedziczenie
PageAdapter

Przykłady

W poniższym przykładzie kodu pokazano, jak utworzyć klasę o nazwie CustomPageAdapter z PageAdapter klasy i zastąpić metodę RenderBeginHyperlink . Metoda RenderBeginHyperlink dodaje atrybut o nazwie src do hiperłącza, który zawiera odwołanie do bieżącej strony. Wszystkie hiperlinki renderowane na stronach, do których CustomPageAdapter jest dołączony, będą miały src atrybut .

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

Uwagi

Klasa PageAdapter jest abstrakcyjną klasą, która dostosowuje stronę internetową dla określonej klasy przeglądarek zdefiniowanych przez język znaczników używany przez przeglądarkę (na przykład HTML lub XHTML). Wiele możliwości adaptacji w zachowaniu renderowania można hermetyzować w wyspecjalizowanych klasach modułów zapisywania tekstu, które pochodzą z HtmlTextWriter klasy, więc nie zawsze jest konieczne podanie karty strony.

Większość elementów członkowskich pochodnych kart stron jest wywoływana z Page klasy lub z kart sterujących. Page Najpierw karta klasy lub kontrolki wykrywa obecność pochodnej karty strony, a następnie wywołaj element członkowski lub podaj funkcjonalność, jeśli karta strony nie jest obecna.

Elementy członkowskie PageAdapter klasy zapewniają następujące funkcje:

  • Właściwości CacheVaryByHeaders i CacheVaryByParams definiują dodatkowe nagłówki HTTP oraz POST parametry, GET których można użyć do różnych buforowania. Są one wywoływane podczas inicjowania pamięci podręcznej Page z klasy.

  • Metoda GetStatePersister zwraca obiekt, który może służyć do utrwalania połączonych stanów widoku i sterowania strony. Odwołuje się on z właściwości, PageStatePersister jeśli jest obecna karta strony pochodnej.

  • Metoda GetPostBackFormReference udostępnia fragment kodu DHTML, który może służyć do odwołowania się do formularzy w skryptach.

  • Metoda DeterminePostBackMode zwraca kolekcję zmiennych po powrocie po powrocie, jeśli strona jest w powłoce. Jest wywoływana przez .NET Framework zamiast Page.DeterminePostBackMode metody, jeśli jest obecna karta strony pochodnej.

  • Metody RenderBeginHyperlink i RenderEndHyperlink są używane przez karty sterujące do renderowania hiperlinków, jeśli istnieje pochodna karta strony.

  • Metoda RenderPostBackEvent renderuje hiperłącze lub tag klienta postback, który może przesłać formularz.

  • Metody RegisterRadioButton i GetRadioButtonsByGroup są używane przez karty sterowania przyciskami radiowymi w celu odwołowania się do innych RadioButton kontrolek w grupie przycisków radiowych.

  • Właściwość ClientState zapewnia dostęp do połączonej kontrolki i stanów Page widoku obiektu za pośrednictwem ClientState wewnętrznej właściwości Page klasy.

  • Metoda TransformText jest używana przez karty sterujące do wykonywania transformacji tekstu specyficznego dla urządzenia.

Konstruktory

PageAdapter()

Inicjuje nowe wystąpienie klasy PageAdapter.

Właściwości

Browser

Pobiera odwołanie do możliwości przeglądarki klienta wysyłającego bieżące żądanie HTTP.

(Odziedziczone po ControlAdapter)
CacheVaryByHeaders

Pobiera listę dodatkowych nagłówków HTTP, za pomocą których buforowanie jest zróżnicowane dla strony sieci Web, do której jest dołączona ta pochodna karta strony.

CacheVaryByParams

Pobiera listę dodatkowych parametrów z żądań HTTP GET i POST, za pomocą których buforowanie jest zróżnicowane dla strony sieci Web, do której jest dołączona ta pochodna karta strony.

ClientState

Pobiera zakodowany ciąg zawierający dane widoku i kontrolki strony sieci Web, do której dołączono tę pochodną kartę strony.

Control

Pobiera odwołanie do kontrolki, do której jest podłączona ta karta sterowania.

(Odziedziczone po ControlAdapter)
Page

Pobiera odwołanie do strony, na której znajduje się kontrolka skojarzona z tą kartą.

(Odziedziczone po ControlAdapter)
PageAdapter

Pobiera odwołanie do karty strony dla strony, na której znajduje się skojarzona kontrolka.

(Odziedziczone po ControlAdapter)

Metody

BeginRender(HtmlTextWriter)

Wywoływane przed renderowaniem kontrolki. W klasie karty pochodnej generuje tagi otwierające, które są wymagane przez określony element docelowy, ale nie jest wymagany przez przeglądarki HTML.

(Odziedziczone po ControlAdapter)
CreateChildControls()

Tworzy kontrolki podrzędne specyficzne dla elementu docelowego dla kontrolki złożonej.

(Odziedziczone po ControlAdapter)
DeterminePostBackMode()

Określa, czy strona sieci Web znajduje się w powłoce i zwraca kolekcję nazw/wartości zmiennych zwrotnych.

DeterminePostBackModeUnvalidated()

Zwraca kolekcję danych, które zostały opublikowane na stronie przy użyciu polecenia POST lub GET, bez przeprowadzania weryfikacji żądania ASP.NET na żądanie.

EndRender(HtmlTextWriter)

Wywoływana po renderowaniu kontrolki. W klasie pochodnej karty generuje tagi zamykające, które są wymagane przez określony element docelowy, ale nie jest wymagany przez przeglądarki HTML.

(Odziedziczone po ControlAdapter)
Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetPostBackFormReference(String)

Zwraca fragment kodu DHTML, którego przeglądarka kliencka może używać do odwołowania się do formularza na stronie, która została opublikowana.

GetRadioButtonsByGroup(String)

Pobiera kolekcję kontrolek przycisków radiowych określonych przez groupName.

GetStatePersister()

Zwraca obiekt, który jest używany przez stronę sieci Web do obsługi stanów kontroli i wyświetlania.

GetType()

Type Pobiera bieżące wystąpienie.

(Odziedziczone po Object)
LoadAdapterControlState(Object)

Ładuje informacje o stanie kontrolki karty, które zostały zapisane SaveAdapterControlState() podczas poprzedniego żądania na stronie, na której znajduje się kontrolka skojarzona z tą kartą sterowania.

(Odziedziczone po ControlAdapter)
LoadAdapterViewState(Object)

Ładuje informacje o stanie widoku karty, które zostały zapisane SaveAdapterViewState() podczas poprzedniego żądania na stronie, na której znajduje się kontrolka skojarzona z tą kartą sterowania.

(Odziedziczone po ControlAdapter)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
OnInit(EventArgs)

Zastępuje metodę OnInit(EventArgs) skojarzonej kontrolki.

(Odziedziczone po ControlAdapter)
OnLoad(EventArgs)

Zastępuje metodę OnLoad(EventArgs) skojarzonej kontrolki.

(Odziedziczone po ControlAdapter)
OnPreRender(EventArgs)

Zastępuje metodę OnPreRender(EventArgs) skojarzonej kontrolki.

(Odziedziczone po ControlAdapter)
OnUnload(EventArgs)

Zastępuje metodę OnUnload(EventArgs) skojarzonej kontrolki.

(Odziedziczone po ControlAdapter)
RegisterRadioButton(RadioButton)

Dodaje kontrolkę przycisku radiowego do kolekcji dla określonej grupy przycisków radiowych.

Render(HtmlTextWriter)

Generuje znaczniki specyficzne dla elementu docelowego dla kontrolki, do której jest dołączona karta kontrolna.

(Odziedziczone po ControlAdapter)
RenderBeginHyperlink(HtmlTextWriter, String, Boolean, String)

Renderuje otwierający tag hiperłącza, który zawiera docelowy adres URL strumienia odpowiedzi.

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

Renderuje otwierający tag hiperłącza, który zawiera docelowy adres URL i klucz dostępu do strumienia odpowiedzi.

RenderChildren(HtmlTextWriter)

Generuje znaczniki specyficzne dla elementu docelowego dla kontrolek podrzędnych w złożonej kontrolce, do której jest dołączona karta sterowania.

(Odziedziczone po ControlAdapter)
RenderEndHyperlink(HtmlTextWriter)

Renderuje zamykający tag hiperłącza do strumienia odpowiedzi.

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

Renderuje zdarzenie zwrotne do strumienia odpowiedzi jako hiperłącze, w tym zakodowany i prawdopodobnie zaszyfrowany stan widoku, oraz docelowy i argument zdarzenia.

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

Renderuje zdarzenie zwrotne do strumienia odpowiedzi jako hiperłącze, w tym zakodowany i prawdopodobnie zaszyfrowany stan widoku, element docelowy zdarzenia i argument, parametr poprzedniej strony i klucz dostępu.

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

Renderuje zdarzenie zwrotne do strumienia odpowiedzi jako hiperłącze, w tym stan zakodowanego widoku, element docelowy zdarzenia i argument, parametr poprzedniej strony i klucz dostępu.

SaveAdapterControlState()

Zapisuje informacje o stanie kontrolki dla karty sterującej.

(Odziedziczone po ControlAdapter)
SaveAdapterViewState()

Zapisuje informacje o stanie widoku dla karty sterującej.

(Odziedziczone po ControlAdapter)
ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)
TransformText(String)

Przekształca tekst dla przeglądarki docelowej.

Dotyczy

Zobacz też