PageAdapter.RenderBeginHyperlink Method (HtmlTextWriter, String, Boolean, String, String)

 

Renders an opening hyperlink tag that includes the target URL and an access key to the response stream.

Namespace:   System.Web.UI.Adapters
Assembly:  System.Web (in System.Web.dll)

Public Overridable Sub RenderBeginHyperlink (
	writer As HtmlTextWriter,
	targetUrl As String,
	encodeUrl As Boolean,
	softkeyLabel As String,
	accessKey As String
)

Parameters

writer
Type: System.Web.UI.HtmlTextWriter

The HtmlTextWriter containing methods to render the target-specific output.

targetUrl
Type: System.String

The String value holding the target URL of the link.

encodeUrl
Type: System.Boolean

true to use HtmlAttributeEncode to encode the stream output; otherwise, false.

softkeyLabel
Type: System.String

The String value to use as a soft key label.

accessKey
Type: System.String

The String value to assign to the accessKey attribute of the link to create.

Exception Condition
ArgumentOutOfRangeException

accessKey is longer than one character.

The RenderBeginHyperlink method writes an opening hyperlink tag. When writer is an HtmlTextWriter object, this tag has the following format:

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

Notes to Inheritors:

When you inherit from the PageAdapter class, you can override the RenderBeginHyperlink method to write a different format for an opening hyperlink tag or to write additional tag attributes. For example, the RenderBeginHyperlink base method does not write an attribute for softkeyLabel.

The following code example demonstrates how to derive a class named CustomPageAdapter from the PageAdapter class and override the RenderBeginHyperlink method. RenderBeginHyperlink adds an attribute named src to a hyperlink, which contains a reference to the current page. All hyperlinks rendered in pages to which CustomPageAdapter is attached will have the src attribute.

Imports System
Imports System.IO
Imports System.Web
Imports System.Web.UI
Imports System.Web.UI.Adapters
Imports Microsoft.VisualBasic

' 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 ' RenderBeginHyperlink
End Class ' CustomPageAdapter

.NET Framework
Available since 2.0
Return to top
Show: