Поделиться через


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 использует один и тот же URL-адрес заголовка и навигации, указанные Text соответственно свойствами.NavigateUrl


<%@ 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 объект к полям в источнике данных. DataNavigateUrlFields Свойства DataTextField используются для указания полей для привязки к заголовку и 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-адреса.

Настраиваемый формат подписей и URL-адресов навигации можно указать, задав DataTextFormatStringDataNavigateUrlFormatString свойства соответственно.

Объект можно скрыть HyperLinkField в элементе управления, привязанном к данным, задав Visible для свойства значение false.

Вы можете настроить разделы верхнего и нижнего HyperLinkField колонтитулов объекта. Чтобы отобразить подпись в разделах верхнего или нижнего колонтитулов, задайте HeaderText значения или FooterText свойства соответственно. Чтобы отобразить изображение в разделе заголовка вместо текста, задайте HeaderImageUrl свойство. Раздел заголовка можно скрыть в объекте HyperLinkField , задав ShowHeader для свойства значение false.

Замечание

Некоторые элементы управления с привязкой к данным (например GridView , элемент управления) могут отображать или скрывать только весь раздел заголовка элемента управления. Эти элементы управления с привязкой к данным не поддерживают ShowHeader свойство для отдельного ограничивающего поля. Чтобы отобразить или скрыть весь раздел заголовка элемента управления с привязкой к данным, используйте свойство элемента управления ShowHeader (если доступно).

Вы также можете настроить внешний вид объекта (цвет шрифта HyperLinkField , цвет фона и т. д.), задав свойства стиля для различных частей поля. В следующей таблице перечислены различные свойства стиля.

Свойство Style Описание
ControlStyle Параметры стиля для дочерних элементов управления HyperLinkField веб-сервера объекта.
FooterStyle Параметры стиля для нижнего HyperLinkField колонтитула объекта.
HeaderStyle Параметры стиля для раздела заголовка HyperLinkField объекта.
ItemStyle Параметры стиля для элементов данных в объекте HyperLinkField .

Конструкторы

Имя Описание
HyperLinkField()

Инициализирует новый экземпляр класса HyperLinkField.

Свойства

Имя Описание
AccessibleHeaderText

Возвращает или задает текст, отображаемый AbbreviatedText в качестве значения свойства в некоторых элементах управления.

(Унаследовано от DataControlField)
Control

Возвращает ссылку на элемент управления данными, DataControlField с которым связан объект.

(Унаследовано от DataControlField)
ControlStyle

Возвращает стиль всех элементов управления веб-сервера, содержащихся в объекте DataControlField .

(Унаследовано от DataControlField)
DataNavigateUrlFields

Возвращает или задает имена полей из источника данных, используемых для создания URL-адресов гиперссылок в объекте HyperLinkField .

DataNavigateUrlFormatString

Возвращает или задает строку, указывающую формат, в котором отображаются URL-адреса гиперссылок в объекте HyperLinkField .

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

Получает или задает URL-адрес для перехода к моменту щелчка гиперссылки в объекте HyperLinkField .

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[])

Форматирует URL-адрес навигации с помощью строки форматирования, указанной свойством DataNavigateUrlFormatString .

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)

Применяется к

См. также раздел