HyperLinkField 类

定义

表示将显示为数据绑定控件中的超链接的字段。

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

示例

下面的代码示例演示如何使用 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 。 若要在页眉或页脚部分中显示标题,请分别设置 HeaderTextFooterText 属性。 若要在标题部分而不是文本中显示图像,请设置 HeaderImageUrl 属性。 通过将属性设置为 ShowHeader false,可以在对象中HyperLinkField隐藏标头节。

备注

某些数据绑定控件 ((如 GridView 控件) )只能显示或隐藏控件的整个标头部分。 这些数据绑定控件不支持 ShowHeader 单个绑定字段的属性。 若要显示或隐藏数据绑定控件的整个标头部分,请使用控件 ShowHeader 的属性 ((如果可用) )。

还可以通过设置字段的不同部分的样式属性来自定义对象的外观 HyperLinkField (字体颜色、背景色等) 。 下表列出了不同的样式属性。

Style 属性 说明
ControlStyle 对象的子 Web 服务器控件的 HyperLinkField 样式设置。
FooterStyle 对象的页脚部分的 HyperLinkField 样式设置。
HeaderStyle 对象的标头部分的 HyperLinkField 样式设置。
ItemStyle 对象中数据项的 HyperLinkField 样式设置。

构造函数

HyperLinkField()

初始化 HyperLinkField 类的新实例。

属性

AccessibleHeaderText

获取或设置某些控件中呈现为 AbbreviatedText 属性值的文本。

(继承自 DataControlField)
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)

方法

CloneField()

创建当前 DataControlField 派生对象的副本。

(继承自 DataControlField)
CopyProperties(DataControlField)

将当前 HyperLinkField 对象的属性复制到指定对象。

CreateField()

返回 HyperLinkField 类的新实例。

Equals(Object)

确定指定对象是否等于当前对象。

(继承自 Object)
ExtractValuesFromCell(IOrderedDictionary, DataControlFieldCell, DataControlRowState, Boolean)

从当前表格单元格中提取数据控件字段的值,并将该值添加到指定的 IDictionary 集合中。

(继承自 DataControlField)
FormatDataNavigateUrlValue(Object[])

使用由 DataNavigateUrlFormatString 属性指定的格式字符串格式化导航 URL。

FormatDataTextValue(Object)

使用由 DataTextFormatString 属性指定的格式字符串格式化标题文本。

GetHashCode()

作为默认哈希函数。

(继承自 Object)
GetType()

获取当前实例的 Type

(继承自 Object)
Initialize(Boolean, Control)

初始化 HyperLinkField 对象。

InitializeCell(DataControlFieldCell, DataControlCellType, DataControlRowState, Int32)

初始化 HyperLinkField 对象中的单元格。

LoadViewState(Object)

将数据源视图还原为保存过的前一视图状态。

(继承自 DataControlField)
MemberwiseClone()

创建当前 Object 的浅表副本。

(继承自 Object)
OnFieldChanged()

引发 FieldChanged 事件。

(继承自 DataControlField)
SaveViewState()

保存在页回发到服务器后对 DataControlField 视图状态所做的更改。

(继承自 DataControlField)
ToString()

返回表示此 DataControlField 对象的字符串。

(继承自 DataControlField)
TrackViewState()

使 DataControlField 对象跟踪对其视图状态所做的更改,以便这些更改可以存储在控件的 ViewState 属性中并且能够在同一页的不同请求间得以保持。

(继承自 DataControlField)
ValidateSupportsCallback()

指示 HyperLinkField 对象中包含的控件支持回调。

显式接口实现

IDataSourceViewSchemaAccessor.DataSourceViewSchema

获取或设置与此 DataControlField 对象关联的架构。

(继承自 DataControlField)
IStateManager.IsTrackingViewState

获取一个值,该值指示 DataControlField 对象是否保存对其视图状态的更改。

(继承自 DataControlField)
IStateManager.LoadViewState(Object)

将数据控件字段还原为保存过的前一视图状态。

(继承自 DataControlField)
IStateManager.SaveViewState()

保存在页回发到服务器后对 DataControlField 视图状态所做的更改。

(继承自 DataControlField)
IStateManager.TrackViewState()

使 DataControlField 对象跟踪对其视图状态所做的更改,以便这些更改可以存储在控件的 ViewState 属性中并且能够在同一页的不同请求间得以保持。

(继承自 DataControlField)

适用于

另请参阅