HyperlinkColumn 最主要的功能是以超级链接来显示资料源中的一个字段内容,并可以指定使用者点选该项目时所要开启的地址。其使用语法如下所示:
<ASP:HyperlinkColumn
DataNavigateUrlField="DataSourceField"
DataNavigateUrlFormatString="FormatExpression"
DataTextField="DataSourceField"
DataTextFormatString="FormatExpression"
FooterText="FooterText"
HeaderImageUrl="url"
HeaderText="HeaderText"
NavigateUrl="url"
ReadOnly="True | False"
SortField="DataSourceFieldToSortBy"
Target="window"
Text="HyperlinkText"
Visible="True | False"
/>
下列程序代码范例以Hyperlink Column 来显示使用者电子邮件信箱字段,若使用者点选了一笔记录,则会开启邮件编辑软件:
<%@Import Namespace=System.Data.ADO%>
<%@Import Namespace=System.Data%>
<!--#Include File="GetTable.inc"-->
<Html>
<Form Runat="Server">
<ASP:DataGrid Id="dgA" AllowPaging="True" PageSize="5"
OnPageIndexChanged="dgA_PageChg" Runat="Server"
PagerStyle-Mode="NumericPages" BorderColor="#808080"
HeaderStyle-Font-Names="Courier New"
HeaderStyle-BackColor="#D1DCEB"
HeaderStyle-Font-Bold="True"
HeaderStyle-HorizontalAlign="Center"
AutoGenerateColumns="False">
<Property Name="Columns">
<ASP:BoundColumn
HeaderText="姓名"
DataField="UserName"/>
<ASP:BoundColumn
HeaderText="电话"
DataField="UserTel"/>
<ASP:HyperlinkColumn
HeaderText="电邮"
DataNavigateUrlField="UserEmail"
DataTextField="UserEmail"
DataNavigateUrlFormatString="mailto:{0}" />
</Property>
</ASP:DataGrid>
</Form>
<Script Language="VB" Runat="Server">
Sub Page_Load(Sender As Object, e As EventArgs)
If Page.IsPostBack=False Then
Dim dtDataTable As DataTable=GetTable("CH08\MyWeb.mdb", "Members")
dgA.DataSource=dtDataTable.DefaultView
Page.DataBind()
End If
End Sub
Sub dgA_PageChg(Sender As Object, e As DataGridPageChangedEventArgs)
Dim dtDataTable As DataTable=GetTable("CH08\MyWeb.mdb", "Members")
dgA.DataSource=dtDataTable.DefaultView
Page.DataBind()
End Sub
</SCRIPT>
</Html>
DataNavigateUrlFormatString="mailto:{0}"
其中「{0}」会被DataNavigateUrlField 的内容所取代,所以执行结果如下:若超级链接的内容是某个网址,只要将NavigateUrlFormatString 属性的内容设定为「"http://{0}"」即可。
文章来源于领测软件测试网 https://www.ltesting.net/