PageAdapter Класс

Определение

Адаптирует веб-страницу для определенного браузера и создает базовый класс, из которого наследуются все страницы адаптера, прямо или косвенно.

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
Наследование
PageAdapter

Примеры

В следующем примере кода показано, как наследовать класс, названный CustomPageAdapter из PageAdapter класса, и переопределить RenderBeginHyperlink метод. Метод RenderBeginHyperlink добавляет атрибут с именем src в гиперссылку, содержащую ссылку на текущую страницу. Все гиперссылки, отображаемые на страницах, к которым CustomPageAdapter прикреплены, будут иметь 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

Комментарии

Этот PageAdapter класс является абстрактным классом, который адаптирует веб-страницу для определенного класса браузеров, определенного языком разметки, который использует браузер (например, HTML или XHTML). Большая часть адаптации в поведении отрисовки может быть инкапсулирована в специализированных классах модуля записи текста, производных от HtmlTextWriter класса, поэтому не всегда требуется предоставить адаптер страницы.

Большинство членов производных адаптеров страниц вызываются из Page класса или из адаптеров элементов управления. Во-первых, Page адаптеры класса или элемента управления обнаруживают наличие производного адаптера страницы, а затем вызывают член или предоставляют функциональные возможности, если адаптер страницы отсутствует.

Члены PageAdapter класса предоставляют следующие функциональные возможности:

  • CacheVaryByParams Свойства CacheVaryByHeaders определяют дополнительные заголовки HTTP и HTTP GET и POST параметры, которые можно использовать для изменения кэширования. Они вызываются во время инициализации кэша Page из класса.

  • Метод GetStatePersister возвращает объект, который можно использовать для сохранения объединенных состояний представления и управления страницы. Он ссылается из свойства, PageStatePersister если присутствует производный адаптер страницы.

  • Этот GetPostBackFormReference метод предоставляет фрагмент кода DHTML, который можно использовать для ссылки на формы в скриптах.

  • Метод DeterminePostBackMode возвращает коллекцию переменных обратной передачи, если страница находится в обратном режиме. Он вызывается платформа .NET Framework вместо Page.DeterminePostBackMode метода, если присутствует производный адаптер страницы.

  • Эти RenderBeginHyperlink RenderEndHyperlink методы используются адаптерами элементов управления для отрисовки гиперссылок при наличии производного адаптера страницы.

  • Метод RenderPostBackEvent отображает гиперссылку или тег клиента обратной передачи, который может отправить форму.

  • GetRadioButtonsByGroup Эти RegisterRadioButton методы используются адаптерами управления переключателями для ссылки на другие RadioButton элементы управления в группе переключателей.

  • Свойство ClientState предоставляет доступ к объединенным состояниям Page элемента управления и представления объекта через внутреннее ClientState свойство Page класса.

  • Этот TransformText метод используется адаптерами элементов управления для выполнения преобразования текста для конкретного устройства.

Конструкторы

PageAdapter()

Инициализирует новый экземпляр класса PageAdapter.

Свойства

Browser

Возвращает ссылку на возможности клиентского браузера, создающего текущий HTTP-запрос.

(Унаследовано от ControlAdapter)
CacheVaryByHeaders

Возвращает список дополнительных HTTP-заголовков, в котором изменение кэширования зависит от веб-страницы, к которой присоединен этот производный адаптер страницы.

CacheVaryByParams

Возвращает список дополнительных параметров из HTTP-запросов GET и POST, при помощи которых изменяется кэширование веб-страницы, к которой присоединен этот производный адаптер страницы.

ClientState

Возвращает зашифрованную строку, содержащую данные просмотра и элементов управления состоянием веб-страницы к которой присоединен этот производный адаптер страницы.

Control

Возвращает ссылку на элемент управления, к которому присоединен адаптер элемента управления.

(Унаследовано от ControlAdapter)
Page

Возвращает ссылку на страницу, на которой располагается элемент управления, связанный с данным адаптером.

(Унаследовано от ControlAdapter)
PageAdapter

Возвращает ссылку на адаптер страницы для страницы, на которой располагается связанный элемент управления.

(Унаследовано от ControlAdapter)

Методы

BeginRender(HtmlTextWriter)

Вызывается до отрисовки элемента управления. В производном классе адаптеров генерируются открывающие теги, которые необходимы для определенной цели, но не требуются для HTML-браузеров.

(Унаследовано от ControlAdapter)
CreateChildControls()

Создает целевые дочерние элементы управления для составного элемента управления.

(Унаследовано от ControlAdapter)
DeterminePostBackMode()

Определяет, проводится ли обратная передача веб-страницы и возвращается ли имя/значение коллекции переменных обратной передачи.

DeterminePostBackModeUnvalidated()

Возвращает коллекцию данных имя-значение, отправленную на страницу с помощью команды GET или POST, и без выполнения проверки запросов ASP.NET в запросе.

EndRender(HtmlTextWriter)

Вызывается после отрисовки элемента управления. В производном классе адаптеров генерируются закрывающие теги, которые необходимы для определенной цели, но не требуются для HTML-браузеров.

(Унаследовано от ControlAdapter)
Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetPostBackFormReference(String)

Возвращает фрагмент кода DHTML, который клиентский браузер может использовать для создания ссылки на форму на странице, которая была отправлена.

GetRadioButtonsByGroup(String)

Возвращает коллекцию элементов управления переключателями, указанных groupName.

GetStatePersister()

Возвращает объект, который веб-страница использует для настройки элементов управления и состояний просмотра.

GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
LoadAdapterControlState(Object)

Загружает сведения о состоянии адаптера элемента управления, которые были сохранены SaveAdapterControlState() во время предыдущего запроса страницы, на которой размещен элемент управления, связанный с адаптером элемента управления.

(Унаследовано от ControlAdapter)
LoadAdapterViewState(Object)

Загружает сведения о состоянии просмотра адаптера, сохраненные объектом SaveAdapterViewState() во время предыдущего запроса страницы, на которой размещен элемент управления, связанный с адаптером элемента управления.

(Унаследовано от ControlAdapter)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
OnInit(EventArgs)

Переопределяет метод OnInit(EventArgs) для связанного элемента управления.

(Унаследовано от ControlAdapter)
OnLoad(EventArgs)

Переопределяет метод OnLoad(EventArgs) для связанного элемента управления.

(Унаследовано от ControlAdapter)
OnPreRender(EventArgs)

Переопределяет метод OnPreRender(EventArgs) для связанного элемента управления.

(Унаследовано от ControlAdapter)
OnUnload(EventArgs)

Переопределяет метод OnUnload(EventArgs) для связанного элемента управления.

(Унаследовано от ControlAdapter)
RegisterRadioButton(RadioButton)

Добавляет элемент управления переключателем в коллекцию для определенной группы переключателей.

Render(HtmlTextWriter)

Создает целевую разметку для элемента управления, к которому присоединяется адаптер управления.

(Унаследовано от ControlAdapter)
RenderBeginHyperlink(HtmlTextWriter, String, Boolean, String)

Подготавливает к просмотру открывающий тэг гиперссылки, который включает конечный URL-адрес для ответного потока.

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

Подготавливает к просмотру открывающий тэг гиперссылки, который включает конечный URL-адрес и код доступа к ответному потоку.

RenderChildren(HtmlTextWriter)

Создает целевую разметку для дочерних элементов управления в составном элементе управления, к которому присоединяется адаптер элемента управления.

(Унаследовано от ControlAdapter)
RenderEndHyperlink(HtmlTextWriter)

Подготавливает к просмотру закрывающий тэг гиперссылки для ответного потока.

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

Отображает событие обратной передачи в ответном потоке в виде гиперссылки, включая закодированное и, возможно, зашифрованное состояние просмотра, а также цель и аргумент события.

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

Отображает событие обратной передачи в ответном потоке в виде гиперссылки, включая закодированное и, возможно, зашифрованное состояние просмотра, а также цель и аргумент события, параметр предыдущей страницы и код доступа.

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

Отображает событие обратной передачи в ответном потоке в виде гиперссылки, включая закодированное состояние просмотра, а также цель и аргумент события, параметр предыдущей страницы и код доступа.

SaveAdapterControlState()

Сохраняет сведения о состоянии элемента управления для адаптера элемента управления.

(Унаследовано от ControlAdapter)
SaveAdapterViewState()

Сохраняет сведения о состоянии просмотра для адаптера элемента управления.

(Унаследовано от ControlAdapter)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)
TransformText(String)

Выполняет преобразование текста для целевого браузера.

Применяется к

См. также раздел