HyperLinkField Classe

Definição

Representa um campo que é exibido como um hiperlink num controlo data-bound.

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
Herança
HyperLinkField

Exemplos

O exemplo de código seguinte demonstra como usar um HyperLinkField objeto para mostrar uma coluna de hiperligações estáticas num GridView controlo. Cada hiperligação no HyperLinkField objeto partilha a mesma legenda e URL de navegação especificadas pelas Text propriedades e NavigateUrl e, respetivamente.


<%@ 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>

O exemplo de código seguinte demonstra como associar um HyperLinkField objeto a campos numa fonte de dados. As DataTextField propriedades e DataNavigateUrlFields são usadas para especificar os campos a atribuir à legenda e à URL de navegação, respetivamente, de cada hiperligação apresentada no HyperLinkField objeto.


<%@ 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>

Observações

A HyperLinkField classe é usada por controlos de dados vinculados (como GridView e DetailsView) para mostrar um hipervínculo para cada registo apresentado. Quando o utilizador clica num hiperlink, é encaminhado para a página Web associada ao hyperlink. O HyperLinkField objeto é apresentado de forma diferente consoante o controlo limitado por dados em que é utilizado. Por exemplo, o controlo GridView apresenta um HyperLinkField objeto como uma coluna, enquanto o DetailsView controlo o apresenta como uma linha.

Para especificar a legenda a mostrar para os hiperlinks, use a Text propriedade. Use a NavigateUrl propriedade para especificar a URL para onde navegar quando um hiperlink for clicado. Se quiseres mostrar o conteúdo ligado numa janela ou moldura específica, define a Target propriedade.

Note

Quando as Text propriedades and NavigateUrl são definidas, todos os hiperlinks no HyperLinkField objeto partilham a mesma legenda e URL de navegação. Da mesma forma, a Target propriedade aplica-se também a todos os hiperlinks.

Em alternativa, pode associar o HyperLinkField objeto a campos numa fonte de dados. Isto permite-lhe mostrar uma legenda diferente para cada hiperligação no HyperLinkField objeto e que cada ligação navegue para um local diferente. Para associar um campo a uma legenda, defina a DataTextField propriedade . Para criar um URL para navegação, defina a DataNavigateUrlFields propriedade para uma lista separada por vírgulas de campos para usar para criar o URL.

Pode especificar um formato personalizado para as legendas e URLs de navegação, definindo as DataTextFormatString propriedades e DataNavigateUrlFormatString respetivamente.

Pode esconder um HyperLinkField objeto num controlo data-bound definindo a Visible propriedade para false.

Podes personalizar as secções de cabeçalho e rodapé de um HyperLinkField objeto. Para mostrar uma legenda nas secções do cabeçalho ou rodapé, defina as HeaderText propriedades ou FooterText , respetivamente. Para mostrar uma imagem na secção do cabeçalho em vez de texto, defina a HeaderImageUrl propriedade. A secção do cabeçalho pode ser ocultada no HyperLinkField objeto ao definir a ShowHeader propriedade para false.

Note

Alguns controlos ligados a dados (como o controlo GridView ) podem mostrar ou ocultar apenas toda a secção do cabeçalho do controlo. Estes controlos ligados a dados não suportam a ShowHeader propriedade para um campo ligado individual. Para mostrar ou ocultar toda a secção do cabeçalho de um controlo data-bound, use a propriedade do ShowHeader controlo (se disponível).

Também pode personalizar a aparência do HyperLinkField objeto (cor da fonte, cor de fundo, etc.) definindo as propriedades de estilo para as diferentes partes do campo. A tabela seguinte lista as diferentes propriedades de estilo.

Propriedade de estilo Description
ControlStyle As definições de estilo do servidor Web filho controlam o HyperLinkField objeto.
FooterStyle As definições de estilo para a secção do rodapé do HyperLinkField objeto.
HeaderStyle As definições de estilo para a secção do cabeçalho do HyperLinkField objeto.
ItemStyle As definições de estilo para os itens de dados no HyperLinkField objeto.

Construtores

Name Description
HyperLinkField()

Inicializa uma nova instância da HyperLinkField classe.

Propriedades

Name Description
AccessibleHeaderText

Recebe ou define texto que é renderizado como valor de AbbreviatedText propriedade em alguns controlos.

(Herdado de DataControlField)
Control

Obtém uma referência ao controlo de dados ao qual o DataControlField objeto está associado.

(Herdado de DataControlField)
ControlStyle

Obtém o estilo de quaisquer controlos de servidor Web contidos pelo DataControlField objeto.

(Herdado de DataControlField)
DataNavigateUrlFields

Obtém ou define os nomes dos campos a partir da fonte de dados usada para construir as URLs dos hiperlinks no HyperLinkField objeto.

DataNavigateUrlFormatString

Obtém ou define a cadeia que especifica o formato em que os URLs dos hiperlinks num HyperLinkField objeto são renderizados.

DataTextField

Obtém ou define o nome do campo a partir da fonte de dados que contém o texto para mostrar para as legendas do hiperlink no HyperLinkField objeto.

DataTextFormatString

Obtém ou define a cadeia que especifica o formato em que as legendas do hipertexto num HyperLinkField objeto são exibidas.

DesignMode

Obtém um valor que indica se um campo de controlo de dados está atualmente visualizado num ambiente em tempo de design.

(Herdado de DataControlField)
FooterStyle

Obtém ou define o estilo do rodapé do campo de controlo de dados.

(Herdado de DataControlField)
FooterText

Recebe ou define o texto que é exibido no elemento de rodapé de um campo de controlo de dados.

(Herdado de DataControlField)
HeaderImageUrl

Obtém ou define a URL de uma imagem que é exibida no elemento do cabeçalho de um campo de controlo de dados.

(Herdado de DataControlField)
HeaderStyle

Obtém ou define o estilo do cabeçalho do campo de controlo de dados.

(Herdado de DataControlField)
HeaderText

Obtém ou define o texto que é exibido no elemento do cabeçalho de um campo de controlo de dados.

(Herdado de DataControlField)
InsertVisible

Recebe um valor que indica se o DataControlField objeto é visível quando o controlo de dados do pai está em modo de inserção.

(Herdado de DataControlField)
IsTrackingViewState

Recebe um valor que indica se o DataControlField objeto está a guardar alterações ao seu estado de visualização.

(Herdado de DataControlField)
ItemStyle

Obtém o estilo de qualquer conteúdo baseado em texto apresentado por um campo de controlo de dados.

(Herdado de DataControlField)
NavigateUrl

Obtém ou define a URL para navegar quando um hyperlink num HyperLinkField objeto é clicado.

ShowHeader

Recebe ou define um valor que indica se o elemento do cabeçalho de um campo de controlo de dados é renderizado.

(Herdado de DataControlField)
SortExpression

Obtém ou define uma expressão de ordenação que é usada por um controlo de fonte de dados para ordenar dados.

(Herdado de DataControlField)
Target

Obtém ou define a janela ou frame alvo onde mostrar a página Web ligada quando um hiperlink num HyperLinkField objeto é clicado.

Text

Obtém ou define o texto para mostrar para cada hiperligação no HyperLinkField objeto.

ValidateRequestMode

Recebe ou define um valor que especifica se o controlo valida a entrada do cliente.

(Herdado de DataControlField)
ViewState

Obtém um dicionário de informação de estado que permite guardar e restaurar o estado de visualização de um DataControlField objeto através de múltiplos pedidos para a mesma página.

(Herdado de DataControlField)
Visible

Recebe ou define um valor que indica se um campo de controlo de dados é renderizado.

(Herdado de DataControlField)

Métodos

Name Description
CloneField()

Cria uma cópia duplicada do objeto derivado atualmente DataControlField.

(Herdado de DataControlField)
CopyProperties(DataControlField)

Copia as propriedades do objeto atual HyperLinkField para o objeto especificado.

CreateField()

Devolve uma nova instância da HyperLinkField classe.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
ExtractValuesFromCell(IOrderedDictionary, DataControlFieldCell, DataControlRowState, Boolean)

Extrai o valor do campo de controlo de dados da célula atual da tabela e adiciona o valor à coleção especificada IDictionary .

(Herdado de DataControlField)
FormatDataNavigateUrlValue(Object[])

Formata a URL de navegação usando a string de formato especificada pela DataNavigateUrlFormatString propriedade.

FormatDataTextValue(Object)

Formata o texto da legenda usando a string de formato especificada pela DataTextFormatString propriedade.

GetHashCode()

Serve como função de hash predefinida.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
Initialize(Boolean, Control)

Inicializa o objeto HyperLinkField.

InitializeCell(DataControlFieldCell, DataControlCellType, DataControlRowState, Int32)

Inicializa uma célula num HyperLinkField objeto.

LoadViewState(Object)

Restaura o estado da vista de fonte de dados anteriormente guardada.

(Herdado de DataControlField)
MemberwiseClone()

Cria uma cópia superficial do atual Object.

(Herdado de Object)
OnFieldChanged()

Eleva o FieldChanged evento.

(Herdado de DataControlField)
SaveViewState()

Guarda as alterações feitas ao DataControlField estado de visualização desde o momento em que a página foi publicada de volta no servidor.

(Herdado de DataControlField)
ToString()

Devolve uma cadeia que representa este DataControlField objeto.

(Herdado de DataControlField)
TrackViewState()

Faz com que o DataControlField objeto acompanhe alterações ao estado da visualização para que possam ser armazenadas na propriedade do ViewState controlo e persistirem entre pedidos para a mesma página.

(Herdado de DataControlField)
ValidateSupportsCallback()

Indica que os controlos contidos pelo HyperLinkField objeto suportam callbacks.

Implementações de Interface Explícita

Name Description
IDataSourceViewSchemaAccessor.DataSourceViewSchema

Obtém ou define o esquema associado a este DataControlField objeto.

(Herdado de DataControlField)
IStateManager.IsTrackingViewState

Recebe um valor que indica se o DataControlField objeto está a guardar alterações ao seu estado de visualização.

(Herdado de DataControlField)
IStateManager.LoadViewState(Object)

Restaura o estado de visualização previamente guardado do campo de controlo de dados.

(Herdado de DataControlField)
IStateManager.SaveViewState()

Guarda as alterações feitas ao DataControlField estado de visualização desde o momento em que a página foi publicada de volta no servidor.

(Herdado de DataControlField)
IStateManager.TrackViewState()

Faz com que o DataControlField objeto acompanhe alterações ao estado da visualização para que possam ser armazenadas na propriedade do ViewState controlo e persistirem entre pedidos para a mesma página.

(Herdado de DataControlField)

Aplica-se a

Ver também