HyperLinkColumn 類別

定義

DataGrid 控制項的資料行類型,包含資料行中每個項目的超連結。

public ref class HyperLinkColumn : System::Web::UI::WebControls::DataGridColumn
public class HyperLinkColumn : System.Web.UI.WebControls.DataGridColumn
type HyperLinkColumn = class
    inherit DataGridColumn
Public Class HyperLinkColumn
Inherits DataGridColumn
繼承
HyperLinkColumn

範例

下列範例示範如何建立 HyperLinkColumn 連結到個別頁面的 。

注意

下列程式碼範例會使用單一檔案程式碼模型,如果直接複製到程式碼後置檔案,可能無法正常運作。 此程式碼範例必須複製到副檔名為 .aspx 的空白文字檔中。 如需Web Form程式碼模型的詳細資訊,請參閱ASP.NET Web Forms頁碼模型

<%@ Page Language="C#" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>

<!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>
    <title>HyperLinkColumn Example</title>
<script runat="server">

      ICollection CreateDataSource() 
      {
         DataTable dt = new DataTable();
         DataRow dr;

         dt.Columns.Add(new DataColumn("IntegerValue", typeof(Int32)));
         dt.Columns.Add(new DataColumn("PriceValue", typeof(Double)));
       
         for (int i = 0; i < 3; i++) 
         {
            dr = dt.NewRow();

            dr[0] = i;
            dr[1] = (Double)i * 1.23;

            dt.Rows.Add(dr);
         }

         DataView dv = new DataView(dt);
         return dv;
      }

      void Page_Load(Object sender, EventArgs e) 
      {
         MyDataGrid.DataSource = CreateDataSource();
         MyDataGrid.DataBind();
      }

   </script>

</head>

<body>

   <form id="form1" runat="server">

      <h3>HyperLinkColumn Example</h3>

      <asp:DataGrid id="MyDataGrid" 
           BorderColor="black"
           BorderWidth="1"
           GridLines="Both"
           AutoGenerateColumns="false"
           runat="server">

         <HeaderStyle BackColor="#aaaadd"/>

         <Columns>

            <asp:HyperLinkColumn
                 HeaderText="Select an Item"
                 DataNavigateUrlField="IntegerValue"
                 DataNavigateUrlFormatString="detailspage.aspx?id={0}"
                 DataTextField="PriceValue"
                 DataTextFormatString="{0:c}"
                 Target="_blank"/>
           
         </Columns>

      </asp:DataGrid>

   </form>

</body>
</html>
<%@ Page Language="VB" AutoEventWireup="True" %>
<%@ Import Namespace="System.Data" %>

<!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>
    <title>HyperLinkColumn Example</title>
<script runat="server">

      Function CreateDataSource() As ICollection 
      
         Dim dt As DataTable = New DataTable()
         Dim dr As DataRow
         Dim i As Integer

         dt.Columns.Add(New DataColumn("IntegerValue", GetType(Int32)))
         dt.Columns.Add(New DataColumn("PriceValue", GetType(Double)))
       
         For i = 0 to 2 
         
            dr = dt.NewRow()

            dr(0) = i
            dr(1) = CDbl(i) * 1.23

            dt.Rows.Add(dr)

         Next i

         Dim dv As DataView = New DataView(dt)
         Return dv

      End Function

      Sub Page_Load(sender As Object, e As EventArgs) 
    
         MyDataGrid.DataSource = CreateDataSource()
         MyDataGrid.DataBind()

      End Sub

   </script>

</head>

<body>

   <form id="form1" runat="server">

      <h3>HyperLinkColumn Example</h3>

      <asp:DataGrid id="MyDataGrid" 
           BorderColor="black"
           BorderWidth="1"
           GridLines="Both"
           AutoGenerateColumns="false"
           runat="server">

         <HeaderStyle BackColor="#aaaadd"/>

         <Columns>

            <asp:HyperLinkColumn
                 HeaderText="Select an Item"
                 DataNavigateUrlField="IntegerValue"
                 DataNavigateUrlFormatString="detailspage.aspx?id={0}"
                 DataTextField="PriceValue"
                 DataTextFormatString="{0:c}"
                 Target="_blank"/>
           
         </Columns>

      </asp:DataGrid>

   </form>

</body>
</html>

下列對應的範例會顯示在上一個範例中選取的專案。

<%@ Page Language="C#" AutoEventWireup="True" %>
<!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>
    <title>Details page for DataGrid</title>
<script runat="server">
 
      void Page_Load(Object sender, EventArgs e) 
      {
         Label1.Text = "You selected item: " + Request.QueryString["id"];
      }
 
   </script>
 
</head>
<body>
 
   <h3>Details page for DataGrid</h3>
 
   <asp:Label id="Label1"
        runat="server"/>
 
</body>
</html>
<%@ Page Language="VB" AutoEventWireup="True" %>
<!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>
    <title>Details page for DataGrid</title>
<script runat="server">
 
      Sub Page_Load(sender As Object, e As EventArgs) 
      
         Label1.Text = "You selected item: " & Request.QueryString("id")
      
      End Sub
 
   </script>
 
</head>
<body>
 
   <h3>Details page for DataGrid</h3>
 
   <asp:Label id="Label1"
        runat="server"/>
 
</body>
</html>

備註

HyperLinkColumn使用 控制項中的資料 DataGrid 行類型,為 中的每個 DataGrid 資料列建立超連結。 Text設定 屬性以指定超連結的標題文字。 若要指定要在按一下超連結時連結的 URL,請設定 NavigateUrl 屬性。

注意

如果您設定 TextNavigateUrl 屬性,資料行中的所有超連結都會共用相同的標題和 URL。

您也可以將 中 HyperLinkColumn 超連結的文字標題和 URL 系結至資料來源中的欄位,而不是設定 TextNavigateUrl 屬性。 這可讓您顯示不同的標題,並針對資料行中的每個超連結指定不同的 URL。

DataTextField使用 屬性可指定資料來源中的欄位,以系結至資料行中超連結的文字標題。

注意

DataTextFieldText 屬性不能同時設定。 如果同時設定這兩個屬性,則 DataTextField 屬性會優先使用。

藉由設定 DataNavigateUrlField 屬性,指定要系結至超連結 URL 的欄位。

注意

DataNavigateUrlFieldNavigateUrl 屬性不能同時設定。 如果同時設定這兩個屬性,則 DataNavigateUrlField 屬性會優先使用。

屬性 Target 可讓您指定視窗或框架,以顯示按一下超連結時連結至的網頁內容。

使用資料系結時,您可以分別設定 DataTextFormatString 和 屬性來格式化超連結的文字標題和 DataNavigateUrlFormatString URL。

警告

此控制項可用來顯示使用者輸入,其中可能包含惡意用戶端腳本。 在應用程式中顯示可執行檔腳本、SQL 語句或其他程式碼之前,請先檢查從用戶端傳送的任何資訊。 您可以在控制項中顯示輸入文字之前,先使用驗證控制項來驗證使用者輸入。 ASP.NET 提供輸入要求驗證功能,以封鎖使用者輸入中的腳本和 HTML。 如需詳細資訊,請參閱保護標準控制項如何:將 HTML 編碼套用至字串來保護 Web 應用程式中的腳本惡意探索,以及在ASP.NET Web Pages中驗證使用者輸入

建構函式

HyperLinkColumn()

初始化 HyperLinkColumn 類別的新執行個體。

屬性

DataNavigateUrlField

取得或設定資料來源的欄位,以繫結至 HyperLinkColumn 內超連結的 URL。

DataNavigateUrlFormatString

取得或設定當 URL 資料繫結至資料來源內的欄位時,HyperLinkColumn 內超連結的 URL 的顯示格式。

DataTextField

取得或設定資料來源的欄位,以繫結至 HyperLinkColumn 內超連結的文字標題。

DataTextFormatString

取得或設定 HyperLinkColumn 資料行中超連結文字標題的顯示格式。

DesignMode

取得值,指出資料行是否處在設計模式中。

(繼承來源 DataGridColumn)
FooterStyle

取得資料行行尾區段的樣式屬性。

(繼承來源 DataGridColumn)
FooterText

取得或設定顯示於資料行行尾區段的文字。

(繼承來源 DataGridColumn)
HeaderImageUrl

取得或設定要顯示於資料行行首區段的影像位置。

(繼承來源 DataGridColumn)
HeaderStyle

取得資料行行首區段的樣式屬性。

(繼承來源 DataGridColumn)
HeaderText

取得或設定顯示於資料行行首區段的文字。

(繼承來源 DataGridColumn)
IsTrackingViewState

取得值,判斷是否標記 DataGridColumn 物件以儲存其狀態。

(繼承來源 DataGridColumn)
ItemStyle

取得資料行項目儲存格的樣式屬性。

(繼承來源 DataGridColumn)
NavigateUrl

取得或設定按一下資料行內超連結時所要連結的 URL。

Owner

取得有資料行做為其中成員的 DataGrid 控制項。

(繼承來源 DataGridColumn)
SortExpression

在選取資料行來排序時,取得或設定欄位或運算式的名稱以傳遞至 OnSortCommand(DataGridSortCommandEventArgs) 方法。

(繼承來源 DataGridColumn)
Target

取得或設定目標視窗或框架 (Frame),以顯示按一下資料行內超連結時所要連結的 Web 網頁內容。

Text

取得或設定資料行內超連結所要顯示的文字標題。

ViewState

取得 StateBag 物件,該物件允許衍生自 DataGridColumn 類別的資料行儲存其屬性。

(繼承來源 DataGridColumn)
Visible

取得或設定值,指出資料行是否可見於 DataGrid 控制項中。

(繼承來源 DataGridColumn)

方法

Equals(Object)

判斷指定的物件是否等於目前的物件。

(繼承來源 Object)
FormatDataNavigateUrlValue(Object)

使用 DataNavigateUrlFormatString 屬性所指定的格式,格式化資料繫結的 URL。

FormatDataTextValue(Object)

使用 DataTextFormatString 屬性指定的格式,格式化資料繫結的文字標題。

GetHashCode()

做為預設雜湊函式。

(繼承來源 Object)
GetType()

取得目前執行個體的 Type

(繼承來源 Object)
Initialize()

提供基底實作,以將衍生自 DataGridColumn 類別的資料行重設為其初始狀態。

InitializeCell(TableCell, Int32, ListItemType)

使用內含的超連結,初始化表示此資料行的儲存格。

LoadViewState(Object)

載入 DataGridColumn 物件的狀態。

(繼承來源 DataGridColumn)
MemberwiseClone()

建立目前 Object 的淺層複製。

(繼承來源 Object)
OnColumnChanged()

呼叫 OnColumnsChanged() 方法。

(繼承來源 DataGridColumn)
SaveViewState()

儲存 DataGridColumn 物件的目前狀態。

(繼承來源 DataGridColumn)
ToString()

傳回資料行的字串表示。

(繼承來源 DataGridColumn)
TrackViewState()

導致對伺服器控制項的檢視狀態變更的追蹤 (Tracking),以便它們能夠儲存於伺服器控制項的 StateBag 物件。

(繼承來源 DataGridColumn)

明確介面實作

IStateManager.IsTrackingViewState

取得值,指出資料行是否正在追蹤 (Tracking) 檢視狀態變更。

(繼承來源 DataGridColumn)
IStateManager.LoadViewState(Object)

載入先前儲存的狀態。

(繼承來源 DataGridColumn)
IStateManager.SaveViewState()

傳回包含狀態變更的物件。

(繼承來源 DataGridColumn)
IStateManager.TrackViewState()

啟動追蹤狀態的變更。

(繼承來源 DataGridColumn)

適用於

另請參閱