Compartir a través de


PageAdapter.RenderBeginHyperlink Método

Definición

Representa una etiqueta de hipervínculo de apertura en el flujo de respuesta.

Sobrecargas

RenderBeginHyperlink(HtmlTextWriter, String, Boolean, String)

Representa una etiqueta de hipervínculo de apertura que incluye la dirección URL de destino en el flujo de respuesta.

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

Representa una etiqueta de hipervínculo de apertura que incluye la dirección URL de destino y una clave de acceso al flujo de respuesta.

RenderBeginHyperlink(HtmlTextWriter, String, Boolean, String)

Representa una etiqueta de hipervínculo de apertura que incluye la dirección URL de destino en el flujo de respuesta.

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)

Parámetros

writer
HtmlTextWriter

El HtmlTextWriter que contiene métodos para representar la salida específica del destino.

targetUrl
String

Valor String que contiene la dirección URL de destino del vínculo.

encodeUrl
Boolean

true usar HtmlAttributeEncode(String) para codificar la salida del flujo; de lo contrario, false.

softkeyLabel
String

Valor de String que se va a usar como etiqueta de clave temporal.

Ejemplos

En el ejemplo de código siguiente se muestra cómo derivar una clase denominada CustomPageAdapter de la clase PageAdapter e invalidar el método RenderBeginHyperlink. El método RenderBeginHyperlink agrega un atributo denominado src a un hipervínculo, que contiene una referencia a la página actual. Todos los hipervínculos representados en páginas a las que se adjunta CustomPageAdapter tendrán el atributo 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

Comentarios

El método RenderBeginHyperlink escribe una etiqueta de hipervínculo de apertura. Cuando writer es HtmlTextWriter, esta etiqueta tiene el siguiente formato:

<a href=" targetUrl ">

Notas a los desarrolladores de herederos

Al heredar de la clase PageAdapter, puede invalidar el método RenderBeginHyperlink(HtmlTextWriter, String, Boolean, String) para escribir un formato diferente para una etiqueta de hipervínculo de apertura o escribir atributos de etiqueta adicionales. Por ejemplo, el método base RenderBeginHyperlink(HtmlTextWriter, String, Boolean, String) no escribe un atributo para softkeyLabel.

Consulte también

Se aplica a

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

Representa una etiqueta de hipervínculo de apertura que incluye la dirección URL de destino y una clave de acceso al flujo de respuesta.

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)

Parámetros

writer
HtmlTextWriter

El HtmlTextWriter que contiene métodos para representar la salida específica del destino.

targetUrl
String

Valor String que contiene la dirección URL de destino del vínculo.

encodeUrl
Boolean

true usar HtmlAttributeEncode(String) para codificar la salida del flujo; de lo contrario, false.

softkeyLabel
String

Valor de String que se va a usar como etiqueta de clave temporal.

accessKey
String

Valor de String que se va a asignar al atributo accessKey del vínculo que se va a crear.

Excepciones

accessKey es mayor que un carácter.

Ejemplos

En el ejemplo de código siguiente se muestra cómo derivar una clase denominada CustomPageAdapter de la clase PageAdapter e invalidar el método RenderBeginHyperlink. RenderBeginHyperlink agrega un atributo denominado src a un hipervínculo, que contiene una referencia a la página actual. Todos los hipervínculos representados en páginas a las que se adjunta CustomPageAdapter tendrán el atributo 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

Comentarios

El método RenderBeginHyperlink escribe una etiqueta de hipervínculo de apertura. Cuando writer es un objeto HtmlTextWriter, esta etiqueta tiene el siguiente formato:

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

Notas a los desarrolladores de herederos

Al heredar de la clase PageAdapter, puede invalidar el método RenderBeginHyperlink(HtmlTextWriter, String, Boolean, String, String) para escribir un formato diferente para una etiqueta de hipervínculo de apertura o escribir atributos de etiqueta adicionales. Por ejemplo, el método base RenderBeginHyperlink(HtmlTextWriter, String, Boolean, String, String) no escribe un atributo para softkeyLabel.

Consulte también

Se aplica a