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 作成する方法を示します。

Note

次のコード サンプルでは、単一ファイル コード モデルを使用しており、分離コード ファイルに直接コピーすると正しく動作しない場合があります。 このコード サンプルは、拡張子が .aspx の空のテキスト ファイルにコピーする必要があります。 Web Forms コード モデルの詳細については、「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

Note

プロパティと NavigateUrl プロパティをText設定すると、列内のすべてのハイパーリンクが同じキャプションと URL を共有します。

および プロパティを設定Textする代わりに、 内HyperLinkColumnのハイパーリンクのテキスト キャプションと NavigateUrl URL をデータ ソースのフィールドにバインドすることもできます。 これにより、異なるキャプションを表示したり、列のハイパーリンクごとに異なる URL を指定したりできます。

プロパティを DataTextField 使用して、列内のハイパーリンクのテキスト キャプションにバインドするフィールドをデータ ソースに指定します。

Note

DataTextFieldプロパティと Text プロパティの両方を同時に設定することはできません。 両方のプロパティが設定されている場合は、 プロパティが DataTextField 優先されます。

プロパティを設定して、ハイパーリンクの URL にバインドするフィールドを DataNavigateUrlField 指定します。

Note

DataNavigateUrlFieldプロパティと NavigateUrl プロパティの両方を同時に設定することはできません。 両方のプロパティが設定されている場合は、 プロパティが DataNavigateUrlField 優先されます。

Targetプロパティを使用すると、ハイパーリンクがクリックされたときにリンクされている Web ページのコンテンツを表示するウィンドウまたはフレームを指定できます。

データ バインディングを使用する場合は、 プロパティと プロパティをそれぞれ設定することで、ハイパーリンクのテキスト キャプションと DataNavigateUrlFormatString URL の書式をDataTextFormatString設定できます。

注意事項

このコントロールは、悪意のあるクライアント スクリプトを含む可能性があるユーザー入力を表示するために使用できます。 実行可能スクリプト、SQL ステートメント、またはその他のコードについてクライアントから送信された情報を確認してから、アプリケーションに表示します。 入力コントロールを使用して、コントロールに入力テキストを表示する前にユーザー入力を確認できます。 ASP.NET は、ユーザー入力のスクリプトと HTML をブロックする入力要求検証機能を提供します。 詳細については、「標準コントロールのセキュリティ保護」、「方法: 文字列に HTML エンコードを適用して Web アプリケーションのスクリプトの悪用から保護する」、および「ASP.NET Web ページでのユーザー入力の検証」を参照してください。

コンストラクター

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

列内のハイパーリンクがクリックされたときのリンク先 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()

サーバー コントロールにビューステートの変更を追跡させ、サーバー コントロールの StateBag オブジェクトに変更を格納できるようにします。

(継承元 DataGridColumn)

明示的なインターフェイスの実装

IStateManager.IsTrackingViewState

列がビューステートの変化を追跡しているかどうかを示す値を取得します。

(継承元 DataGridColumn)
IStateManager.LoadViewState(Object)

以前に保存した状態を読み込みます。

(継承元 DataGridColumn)
IStateManager.SaveViewState()

状態の変化を示すオブジェクトを返します。

(継承元 DataGridColumn)
IStateManager.TrackViewState()

状態変化の追跡を開始します。

(継承元 DataGridColumn)

適用対象

こちらもご覧ください