다음을 통해 공유


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 클래스에는 다음 기능을 제공 합니다.

  • 합니다 CacheVaryByHeaders 하 고 CacheVaryByParams 속성 정의 추가 HTTP 헤더 및 HTTP GETPOST 캐싱을 변경 하는 매개 변수입니다. 캐시 초기화 하는 동안 호출 되는 Page 클래스입니다.

  • GetStatePersister 페이지의 결합 된 뷰 및 컨트롤 상태를 유지 하도록 사용할 수 있는 개체를 반환 합니다. 참조 되는 PageStatePersister 파생된 페이지 어댑터가 있는 경우에 속성입니다.

  • GetPostBackFormReference 메서드는 forms 스크립트에서 참조를 사용할 수 있는 DHTML 코드 조각을 제공 합니다.

  • DeterminePostBackMode 페이지가 포스트백에서 이면 메서드는 다시 게시 변수의 컬렉션을 반환 합니다. 대신.NET Framework에 의해 호출 됩니다는 Page.DeterminePostBackMode 메서드는 파생된 페이지 어댑터가 있는 경우.

  • 합니다 RenderBeginHyperlinkRenderEndHyperlink 메서드는 컨트롤 어댑터에서 파생된 페이지 어댑터가 있는 경우 하이퍼링크를 렌더링 하는 데 사용 됩니다.

  • RenderPostBackEvent 메서드 하이퍼링크 또는 폼을 전송할 수 있는 포스트백 클라이언트 태그를 렌더링 합니다.

  • RegisterRadioButton 하 고 GetRadioButtonsByGroup 메서드를 사용 하 여 라디오 단추 컨트롤 어댑터 다른 참조 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()

요청에 대한 ASP.NET 요청 유효성 검사를 수행하지 않고 POST 또는 GET 명령을 사용하여 페이지에 게시되었던 데이터의 이름-값 컬렉션을 반환합니다.

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)

대상 브라우저의 텍스트를 변환합니다.

적용 대상

추가 정보