HtmlAnchor Sunucu Denetimi Tanımlayıcı Sözdizimi
<a> HTML ögesi eşleyen bir sunucu tarafı denetimi oluşturur ve başka bir Web sayfasına bağlanmanıza olanak sağlar.
<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>
bir <a> HTML ögesini program aracılığıyla denetlemek için HtmlAnchor denetimini kullanın. <a> HTML ögesi, sayfadaki başka bir konuma veya başka bir Web sayfasına gitmenize olanak sağlayan bir köprü oluşturmanızı sağlar. HtmlAnchor denetiminin açılış ve kapanış etiketi ile biçimlendirilmiş olması gerekir. Denetim için açılış ve kapanış etiketleri arasına metin yerleştirerek başlık belirtebilirsiniz. Bu sunucu denetimi, <a> ögesinin özniteliklerini ve özelliklerini dinamik olarak değiştirmek, veri kaynağından köprü görüntülemek ve HtmlAnchor denetimlerini oluşturan olayları dinamik olarak denetlemek için yaygın olarak kullanılır.
Target özelliğini kullanarak yeni Web sayfası görüntülemek için konum belirtebilirsiniz. Target değerleri, alt çizgi ile başlayan aşağıdaki özel değerler dışında a'dan z'ye (büyük/küçük harfe duyarsız) kadar olan aralıkta bir harf ile başlamalıdır: _blank, _self, _parent, ve _top.
HtmlAnchor denetimine bağlamak istediğiniz URL'i dinamik olarak oluşturabilirsiniz. HRef denetimini dinamik olarak oluşturmak için bir HTML belgesinde HtmlAnchor denetimi bildirin. Örneğin:
<a id="anchor1" runat="server"></a>
<a id="anchor1" runat="server"></a>
Not |
---|
HtmlForm denetiminin açılış ve kapanış etiketlerinin arasına HtmlAnchor denetimini katıştırmayı unutmayın. |
Sonra, URL'i HtmlControl'un HRef özelliğine atayan bir olay işleyicisi yazın.
HtmlAnchor denetimi doğrudan veri kaynağı bağlamayı desteklememesine karşın, veri kaynağındaki bir alanın değerlerinden köprüler oluşturmak mümkündür. Önce, Repeater gibi bir liste denetimine veri kaynağını bağlayın. Sonra, liste denetiminde HtmlAnchor denetimi bildirin. Son olarak, kullanılacak alanı belirtmek için DataBinder sınıfının Eval yöntemini kullanan HRef özelliğinin değeri için satır içi kod ekleyin.
Aşağıdaki örnekte, Page_Load olayı oluştuğunda dinamik olarak bir URL'in HtmlAnchor denetimiyle nasıl ilişkilendirildiği gösterilmektedir.
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";
}
Aşağıdaki örnekte, Repeater denetimine HtmlAnchor denetiminin nasıl dahil edildiği gösterilmektedir. Veri kaynağında köprü olarak belirtilen alanı görüntüleyen ItemTemplate içine HtmlAnchor denetimi yerleştirildiğinde, veriler Repeater denetimine bağlanır.
<%@ 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>