Compartilhar via


Controle HtmlAnchor Server sintaxe declarativa 

Cria um controle de servidor que mapeia para o <a> Elemento HTML e permite você vincular a outra página da Web.

<a 
    EnableViewState="False|True" 
    Href="string" 
    Id="string"
    Title="string"
    Visible="False|True"
    OnDataBinding="OnDataBinding event handler"
    OnDisposed="OnDisposed"
    OnInit="OnInit event handler"
    OnLoad="OnLoad event handler"
    OnPreRender="OnPreRender event handler"
    OnServerClick="OnServerClick event handler"
    OnUnload="OnUnload event handler"
    runat="server"
>
linkText
</a>

Comentários

Use o HtmlAnchor o controle para controle programaticamente um <a> Elemento HTML. The <a> Elemento HTML permite que você criar um hiperlink que permite que você mova para outro local na página ou para outra página da Web. The HtmlAnchor controle deve ser bem formado com uma abertura e a marca de fechamento. Você pode especificar a legenda para o controle, colocando texto entre as tags. Este controle de servidor é freqüentemente usado para modificar dinamicamente os atributos e propriedades do <a> elemento, exibir os hyperlinks de uma fonte de dados e controlar eventos para gerar HtmlAnchor Controla dinamicamente.

Você pode especificar o local para exibir a nova página da Web usando o Target propriedade. Target valores devem começar com uma letra no intervalo de um a z (sem distinção entre maiúsculas e minúsculas), exceto os seguintes valores especiais que começam com um sublinhado: _blank, _self, _parent, e _top.

Você pode gerar dinamicamente a URL para a qual você deseja que o HtmlAnchor controle de link. Para gerar o HRef propriedade dinamicamente, declare um controle HtmlAnchor em um documento HTML. Por exemplo:

<a id="anchor1" runat="server"></a>
<a id="anchor1" runat="server"></a>
ObservaçãoObservação:

Lembre-se incorporar o HtmlAnchor controle dentro de Rótulos de abertura e fechamento de um HtmlForm controle.

Em seguida, escrever um manipulador de eventos que atribui uma URL para o HRef propriedade das HtmlControl.

Embora o HtmlAnchor controle não oferece suporte direto a ligação com uma fonte de dados, é possível gerar hiperlinks dos valores de um campo em uma fonte de dados. Primeiro BIND a fonte de dados a um controle de lista, sistema autônomo a Repeater. Em seguida declarar um HtmlAnchor dentro do controle de lista de controle. Finalmente adicionar código embutido para o valor de HRef propriedade que usa o Evalmétodo para o DataBinder classe para especificar o campo a ser usado

Exemplo

O exemplo a seguir demonstra como associar uma URL dinamicamente um HtmlAnchor controlar quando o Page_Load evento ocorre.

Sub Page_Load(ByVal sender As Object, ByVal e As EventArgs)
    anchor1.HRef = "https://www.microsoft.com"
End Sub
void Page_Load(object sender, EventArgs e)
{
    anchor1.HRef = "https://www.microsoft.com";
}

O exemplo a seguir demonstra como incluir um HtmlAnchor controle dentro de um Repeater controle. Data is bound to the Repeater control, while an HtmlAnchor control is placed in the ItemTemplatethat displays the specified field in the data source as a hyperlink.

<%@ Page Language="VB" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>HtmlAnchor Control</title>
</head>

<script runat="server">
   Sub Page_Load(sender As Object, e As EventArgs)
      Dim dt As New DataTable()
      Dim dr As DataRow
      dt.Columns.Add(New DataColumn("IntegerValue", GetType(Int32)))
      dt.Columns.Add(New DataColumn("StringValue", GetType(String)))
      dt.Columns.Add(New DataColumn("DateTimeValue", GetType(DateTime)))
      dt.Columns.Add(New DataColumn("BoolValue", GetType(Boolean)))
      dt.Columns.Add(New DataColumn("CurrencyValue", GetType(Double)))
      Dim i As Integer
      For i = 0 To 8
         dr = dt.NewRow()
         dr(0) = i
         dr(1) = "Item " + i.ToString()
         dr(2) = DateTime.Now
         If i Mod 2 <> 0 Then
            dr(3) = True
         Else
            dr(3) = False
         End If
         dr(4) = 1.23 *(i + 1)
         dt.Rows.Add(dr)
      Next i
      MyRepeater.DataSource = New DataView(dt)
      MyRepeater.DataBind()
   End Sub
</script>

<body>
   <h3>Data Binding with the HtmlAnchor</h3>

   <br />
   <form id="Form1" runat="server">
      <asp:Repeater id="MyRepeater" runat="server">
         <ItemTemplate>
            Link for
            <a id="A1" href='<%# DataBinder.Eval(Container, _
                         "DataItem.StringValue", _
                         "detailspage.aspx?id={0}") %>' 
               runat="server">
               <%# DataBinder.Eval(Container, "DataItem.StringValue") %>
            </a>
         </ItemTemplate>
      </asp:Repeater>
   </form>
</body>
</html>
<%@ Page Language="C#" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<head>
<title>HtmlAnchor Control</title>
</head>
<script runat="server">
   void Page_Load(Object sender, EventArgs e) 
   {
      DataTable dt = new DataTable();
      DataRow dr;
      dt.Columns.Add(new DataColumn("IntegerValue", typeof(Int32)));
      dt.Columns.Add(new DataColumn("StringValue", typeof(string)));
      dt.Columns.Add(new DataColumn("DateTimeValue", typeof(DateTime)));
      dt.Columns.Add(new DataColumn("BoolValue", typeof(bool)));
      dt.Columns.Add(new DataColumn("CurrencyValue", typeof(double)));
      for (int i = 0; i < 9; i++) 
      {
         dr = dt.NewRow();
         dr[0] = i;
         dr[1] = "Item " + i.ToString();
         dr[2] = DateTime.Now;
         dr[3] = (i % 2 != 0) ? true : false;
         dr[4] = 1.23 * (i+1);
         dt.Rows.Add(dr);
      }
      MyRepeater.DataSource=new DataView(dt);
      MyRepeater.DataBind();
   }
</script>

<body>
   <h3>Data Binding with the HtmlAnchor</h3>
   <br />
   <form id="Form1" runat="server">
      <asp:Repeater id="MyRepeater" runat="server">
         <ItemTemplate>
            Link for
            <a id="A1" href='<%# DataBinder.Eval(Container,
                         "DataItem.StringValue",
                         "detailspage.aspx?id={0}") %>' 
               runat="server">
               <%# DataBinder.Eval(Container, "DataItem.StringValue") %>
            </a>
            <br />
         </ItemTemplate>
      </asp:Repeater>
   </form>
</body>
</html>

Consulte também

Referência

HtmlAnchor

Outros recursos

Controles de servidores HTML