HyperLinkField 类
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
表示将显示为数据绑定控件中的超链接的字段。
public ref class HyperLinkField : System::Web::UI::WebControls::DataControlField
public class HyperLinkField : System.Web.UI.WebControls.DataControlField
type HyperLinkField = class
inherit DataControlField
Public Class HyperLinkField
Inherits DataControlField
- 继承
示例
下面的代码示例演示如何使用 HyperLinkField 对象在控件中 GridView 显示静态超链接列。 对象中的每个 HyperLinkField 超链接分别共享由 Text 属性和属性指定的相同标题和 NavigateUrl 导航 URL。
<%@ Page language="C#" %>
<!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 runat="server">
<title>HyperLinkField Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>HyperLinkField Example</h3>
<!-- Populate the Columns collection declaratively. -->
<!-- Set the HyperLinkField field column to a static -->
<!-- caption and URL. -->
<asp:gridview id="OrdersGridView"
datasourceid="OrdersSqlDataSource"
autogeneratecolumns="false"
runat="server">
<columns>
<asp:boundfield datafield="OrderID"
headertext="OrderID"/>
<asp:boundfield datafield="CustomerID"
headertext="Customer ID"/>
<asp:boundfield datafield="OrderDate"
headertext="Order Date"
dataformatstring="{0:d}" />
<asp:hyperlinkfield text="Details..."
navigateurl="~\details.aspx"
headertext="Order Details"
target="_blank" />
</columns>
</asp:gridview>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the Northwind sample database. -->
<asp:sqldatasource id="OrdersSqlDataSource"
selectcommand="SELECT [OrderID], [CustomerID], [OrderDate] FROM [Orders]"
connectionstring="server=localhost;database=northwind;integrated security=SSPI"
runat="server">
</asp:sqldatasource>
</form>
</body>
</html>
<%@ Page language="VB" %>
<!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 runat="server">
<title>HyperLinkField Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>HyperLinkField Example</h3>
<!-- Populate the Columns collection declaratively. -->
<!-- Set the HyperLinkField field column to a static -->
<!-- caption and URL. -->
<asp:gridview id="OrdersGridView"
datasourceid="OrdersSqlDataSource"
autogeneratecolumns="false"
runat="server">
<columns>
<asp:boundfield datafield="OrderID"
headertext="OrderID"/>
<asp:boundfield datafield="CustomerID"
headertext="Customer ID"/>
<asp:boundfield datafield="OrderDate"
headertext="Order Date"
dataformatstring="{0:d}" />
<asp:hyperlinkfield text="Details..."
navigateurl="~\details.aspx"
headertext="Order Details"
target="_blank" />
</columns>
</asp:gridview>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the Northwind sample database. -->
<asp:sqldatasource id="OrdersSqlDataSource"
selectcommand="SELECT [OrderID], [CustomerID], [OrderDate] FROM [Orders]"
connectionstring="server=localhost;database=northwind;integrated security=SSPI"
runat="server">
</asp:sqldatasource>
</form>
</body>
</html>
下面的代码示例演示如何将对象绑定到 HyperLinkField 数据源中的字段。 这些 DataTextField 字段和 DataNavigateUrlFields 属性用于指定要绑定到对象中显示的每个超链接的标题和导航 URL 的 HyperLinkField 字段。
<%@ Page language="C#" %>
<!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 runat="server">
<title>HyperLinkField Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>HyperLinkField Example</h3>
<!-- Populate the Columns collection declaratively. -->
<!-- The UnitPrice field values are bound to the -->
<!-- captions of the hyperlinks in the HyperLinkField -->
<!-- field column, formatted as currency. The ProductID -->
<!-- field values are bound to the navigate URLs of the -->
<!-- hyperlinks. However, instead of being the actual -->
<!-- URL values, the product ID is passed to the linked -->
<!-- page as a parameter in the URL specified by the -->
<!-- DataNavigateUrlFormatString property. -->
<asp:gridview id="OrdersGridView"
datasourceid="OrdersSqlDataSource"
autogeneratecolumns="false"
runat="server">
<columns>
<asp:boundfield datafield="OrderID"
headertext="Order ID"/>
<asp:boundfield datafield="ProductID"
headertext="Product ID"/>
<asp:hyperlinkfield datatextfield="UnitPrice"
datatextformatstring="{0:c}"
datanavigateurlfields="ProductID"
datanavigateurlformatstring="~\details.aspx?ProductID={0}"
headertext="Price"
target="_blank" />
<asp:boundfield datafield="Quantity"
headertext="Quantity"/>
</columns>
</asp:gridview>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the Northwind sample database. -->
<asp:sqldatasource id="OrdersSqlDataSource"
selectcommand="SELECT [OrderID], [ProductID], [UnitPrice], [Quantity] FROM [Order Details]"
connectionstring="server=localhost;database=northwind;integrated security=SSPI"
runat="server">
</asp:sqldatasource>
</form>
</body>
</html>
<%@ Page language="VB" %>
<!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 runat="server">
<title>HyperLinkField DataTextFormatString and DataNavigateUrlFormatString Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>HyperLinkField DataTextFormatString and DataNavigateUrlFormatString Example</h3>
<!-- Populate the Columns collection declaratively. -->
<!-- The UnitPrice field values are bound to the -->
<!-- captions of the hyperlinks in the HyperLinkField -->
<!-- field column, formatted as currency. The ProductID -->
<!-- field values are bound to the navigate URLs of the -->
<!-- hyperlinks. However, instead of being the actual -->
<!-- URL values, the product ID is passed to the linked -->
<!-- page as a parameter in the URL specified by the -->
<!-- DataNavigateUrlFormatString property. -->
<asp:gridview id="OrdersGridView"
datasourceid="OrdersSqlDataSource"
autogeneratecolumns="false"
runat="server">
<columns>
<asp:boundfield datafield="OrderID"
headertext="Order ID"/>
<asp:boundfield datafield="ProductID"
headertext="Product ID"/>
<asp:hyperlinkfield datatextfield="UnitPrice"
datatextformatstring="{0:c}"
datanavigateurlfields="ProductID"
datanavigateurlformatstring="~\details.aspx?ProductID={0}"
headertext="Price"
target="_blank" />
<asp:boundfield datafield="Quantity"
headertext="Quantity"/>
</columns>
</asp:gridview>
<!-- This example uses Microsoft SQL Server and connects -->
<!-- to the Northwind sample database. -->
<asp:sqldatasource id="OrdersSqlDataSource"
selectcommand="SELECT [OrderID], [ProductID], [UnitPrice], [Quantity] FROM [Order Details]"
connectionstring="server=localhost;database=northwind;integrated security=SSPI"
runat="server">
</asp:sqldatasource>
</form>
</body>
</html>
注解
数据 HyperLinkField 绑定控件使用此类 (,例如 GridView ,) DetailsView 显示每个记录的超链接。 当用户单击超链接时,会定向到与超链接关联的网页。 对象 HyperLinkField 以不同的方式显示,具体取决于所使用的数据绑定控件。 例如,控件将 GridView 对象显示为 HyperLinkField 列,而控件将其 DetailsView 显示为行。
若要指定要为超链接显示的标题,请使用该 Text 属性。 使用 NavigateUrl 属性指定要在单击超链接时导航到的 URL。 如果要在特定窗口或框架中显示链接的内容,请设置该 Target 属性。
备注
Text设置属性NavigateUrl后,对象中的所有超链接HyperLinkField共享相同的标题和导航 URL。 同样,该 Target 属性也适用于所有超链接。
或者,可以将对象绑定到 HyperLinkField 数据源中的字段。 这样,你可以为对象中的每个 HyperLinkField 超链接显示不同的标题,并让每个超链接导航到不同的位置。 若要将字段绑定到标题,请设置 DataTextField 属性。 若要创建用于导航的 URL,请将 DataNavigateUrlFields 属性设置为逗号分隔的字段列表,以用于创建 URL。
可以通过分别设置标题和属性来指定标题和DataNavigateUrlFormatString导航 URL 的DataTextFormatString自定义格式。
You can hide a HyperLinkField object in a data-bound control by setting the Visible property to false
.
可以自定义对象的页眉和页脚部分 HyperLinkField 。 若要在页眉或页脚部分中显示标题,请分别设置 HeaderText 或 FooterText 属性。 若要在标题部分而不是文本中显示图像,请设置 HeaderImageUrl 属性。 通过将属性设置为 ShowHeader false
,可以在对象中HyperLinkField隐藏标头节。
备注
某些数据绑定控件 ((如 GridView 控件) )只能显示或隐藏控件的整个标头部分。 这些数据绑定控件不支持 ShowHeader 单个绑定字段的属性。 若要显示或隐藏数据绑定控件的整个标头部分,请使用控件 ShowHeader
的属性 ((如果可用) )。
还可以通过设置字段的不同部分的样式属性来自定义对象的外观 HyperLinkField (字体颜色、背景色等) 。 下表列出了不同的样式属性。
Style 属性 | 说明 |
---|---|
ControlStyle | 对象的子 Web 服务器控件的 HyperLinkField 样式设置。 |
FooterStyle | 对象的页脚部分的 HyperLinkField 样式设置。 |
HeaderStyle | 对象的标头部分的 HyperLinkField 样式设置。 |
ItemStyle | 对象中数据项的 HyperLinkField 样式设置。 |
构造函数
HyperLinkField() |
初始化 HyperLinkField 类的新实例。 |
属性
AccessibleHeaderText |
获取或设置某些控件中呈现为 |
Control |
获取对数据控件的引用,该控件与 DataControlField 对象关联。 (继承自 DataControlField) |
ControlStyle |
获取 DataControlField 对象所包含的任何 Web 服务器控件的样式。 (继承自 DataControlField) |
DataNavigateUrlFields |
获取或设置数据源中字段的名称,用于为 HyperLinkField 对象中的超链接构造 URL。 |
DataNavigateUrlFormatString |
获取或设置用于指定格式的字符串,HyperLinkField 对象中的超链接的 URL 将以此格式呈现。 |
DataTextField |
获取或设置数据源中的字段的名称,此名称包含要为 HyperLinkField 对象中的超链接标题显示的文本。 |
DataTextFormatString |
获取或设置用于指定格式的字符串,HyperLinkField 对象中的超链接标题将以此格式显示。 |
DesignMode |
获取一个值,该值指示数据控件字段当前是否在设计时环境中进行查看。 (继承自 DataControlField) |
FooterStyle |
获取或设置数据控件字段脚注的样式。 (继承自 DataControlField) |
FooterText |
获取或设置数据控件字段的脚注项中显示的文本。 (继承自 DataControlField) |
HeaderImageUrl |
获取或设置数据控件字段的标题项中显示的图像的 URL。 (继承自 DataControlField) |
HeaderStyle |
获取或设置数据控件字段标头的样式。 (继承自 DataControlField) |
HeaderText |
获取或设置数据控件字段的标题项中显示的文本。 (继承自 DataControlField) |
InsertVisible |
获取一个值,该值指示 DataControlField 对象在其父级数据绑定控件处于插入模式时是否可见。 (继承自 DataControlField) |
IsTrackingViewState |
获取一个值,该值指示 DataControlField 对象是否保存对其视图状态的更改。 (继承自 DataControlField) |
ItemStyle |
获取由数据控件字段显示的任何基于文本的内容的样式。 (继承自 DataControlField) |
NavigateUrl |
获取或设置当单击 HyperLinkField 对象中的超链接时定位到的 URL。 |
ShowHeader |
获取或设置一个值,该值指示是否呈现数据控件字段的标题项。 (继承自 DataControlField) |
SortExpression |
获取或设置数据源控件用来对数据进行排序的排序表达式。 (继承自 DataControlField) |
Target |
获取或设置目标窗口或框架,单击 HyperLinkField 对象中的超链接时,将在此显示链接到的网页。 |
Text |
获取或设置要为 HyperLinkField 对象中的每个超链接显示的文本。 |
ValidateRequestMode |
获取或设置一个值,该值指定该控件是否验证客户端输入。 (继承自 DataControlField) |
ViewState |
获取状态信息的字典,这些信息使您可以在同一页的多个请求间保存和还原 DataControlField 对象的视图状态。 (继承自 DataControlField) |
Visible |
获取或设置指示是否呈现数据控件字段的值。 (继承自 DataControlField) |
方法
显式接口实现
IDataSourceViewSchemaAccessor.DataSourceViewSchema |
获取或设置与此 DataControlField 对象关联的架构。 (继承自 DataControlField) |
IStateManager.IsTrackingViewState |
获取一个值,该值指示 DataControlField 对象是否保存对其视图状态的更改。 (继承自 DataControlField) |
IStateManager.LoadViewState(Object) |
将数据控件字段还原为保存过的前一视图状态。 (继承自 DataControlField) |
IStateManager.SaveViewState() |
保存在页回发到服务器后对 DataControlField 视图状态所做的更改。 (继承自 DataControlField) |
IStateManager.TrackViewState() |
使 DataControlField 对象跟踪对其视图状态所做的更改,以便这些更改可以存储在控件的 ViewState 属性中并且能够在同一页的不同请求间得以保持。 (继承自 DataControlField) |