Поделиться через


PageAdapter.RenderBeginHyperlink Метод

Определение

Отрисовывает открывающий тег гиперссылки в поток ответа.

Перегрузки

RenderBeginHyperlink(HtmlTextWriter, String, Boolean, String)

Отрисовывает открывающий тег гиперссылки, содержащий целевой URL-адрес потока ответа.

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

Отрисовывает открывающий тег гиперссылки, содержащий целевой URL-адрес и ключ доступа к потоку ответа.

RenderBeginHyperlink(HtmlTextWriter, String, Boolean, String)

Отрисовывает открывающий тег гиперссылки, содержащий целевой URL-адрес потока ответа.

public:
 virtual void RenderBeginHyperlink(System::Web::UI::HtmlTextWriter ^ writer, System::String ^ targetUrl, bool encodeUrl, System::String ^ softkeyLabel);
public virtual void RenderBeginHyperlink (System.Web.UI.HtmlTextWriter writer, string targetUrl, bool encodeUrl, string softkeyLabel);
abstract member RenderBeginHyperlink : System.Web.UI.HtmlTextWriter * string * bool * string -> unit
override this.RenderBeginHyperlink : System.Web.UI.HtmlTextWriter * string * bool * string -> unit
Public Overridable Sub RenderBeginHyperlink (writer As HtmlTextWriter, targetUrl As String, encodeUrl As Boolean, softkeyLabel As String)

Параметры

writer
HtmlTextWriter

HtmlTextWriter, содержащий методы для отрисовки выходных данных, относящихся к целевому объекту.

targetUrl
String

Значение String, удерживающее целевой URL-адрес ссылки.

encodeUrl
Boolean

true использовать HtmlAttributeEncode(String) для кодирования выходных данных потока; в противном случае false.

softkeyLabel
String

Значение String, используемое в качестве метки обратимого ключа.

Примеры

В следующем примере кода показано, как наследовать класс с именем 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

Комментарии

Метод RenderBeginHyperlink записывает открывающий тег гиперссылки. Если writerHtmlTextWriter, этот тег имеет следующий формат:

<a href=" targetUrl ">

Примечания для тех, кто наследует этот метод

При наследовании от класса PageAdapter можно переопределить метод RenderBeginHyperlink(HtmlTextWriter, String, Boolean, String) для записи другого формата для открывающего тега гиперссылки или записи дополнительных атрибутов тега. Например, базовый метод RenderBeginHyperlink(HtmlTextWriter, String, Boolean, String) не записывает атрибут для softkeyLabel.

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

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

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

Отрисовывает открывающий тег гиперссылки, содержащий целевой URL-адрес и ключ доступа к потоку ответа.

public:
 virtual void RenderBeginHyperlink(System::Web::UI::HtmlTextWriter ^ writer, System::String ^ targetUrl, bool encodeUrl, System::String ^ softkeyLabel, System::String ^ accessKey);
public virtual void RenderBeginHyperlink (System.Web.UI.HtmlTextWriter writer, string targetUrl, bool encodeUrl, string softkeyLabel, string accessKey);
abstract member RenderBeginHyperlink : System.Web.UI.HtmlTextWriter * string * bool * string * string -> unit
override this.RenderBeginHyperlink : System.Web.UI.HtmlTextWriter * string * bool * string * string -> unit
Public Overridable Sub RenderBeginHyperlink (writer As HtmlTextWriter, targetUrl As String, encodeUrl As Boolean, softkeyLabel As String, accessKey As String)

Параметры

writer
HtmlTextWriter

HtmlTextWriter, содержащий методы для отрисовки выходных данных, относящихся к целевому объекту.

targetUrl
String

Значение String, удерживающее целевой URL-адрес ссылки.

encodeUrl
Boolean

true использовать HtmlAttributeEncode(String) для кодирования выходных данных потока; в противном случае false.

softkeyLabel
String

Значение String, используемое в качестве метки обратимого ключа.

accessKey
String

Значение String, которое необходимо назначить атрибуту accessKey создаваемой ссылки.

Исключения

accessKey длиннее одного символа.

Примеры

В следующем примере кода показано, как наследовать класс с именем 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

Комментарии

Метод RenderBeginHyperlink записывает открывающий тег гиперссылки. Если writer является объектом HtmlTextWriter, этот тег имеет следующий формат:

<a href=" targetUrl " accessKey=" accessKey ">

Примечания для тех, кто наследует этот метод

При наследовании от класса PageAdapter можно переопределить метод RenderBeginHyperlink(HtmlTextWriter, String, Boolean, String, String) для записи другого формата для открывающего тега гиперссылки или записи дополнительных атрибутов тега. Например, базовый метод RenderBeginHyperlink(HtmlTextWriter, String, Boolean, String, String) не записывает атрибут для softkeyLabel.

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

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