次の方法で共有


HyperLinkColumn.Target プロパティ

定義

列内のハイパーリンクがクリックされたときにリンクされる Web ページコンテンツを表示するターゲット ウィンドウまたはフレームを取得または設定します。

public:
 virtual property System::String ^ Target { System::String ^ get(); void set(System::String ^ value); };
public virtual string Target { get; set; }
[System.ComponentModel.TypeConverter(typeof(System.Web.UI.WebControls.TargetConverter))]
public virtual string Target { get; set; }
member this.Target : string with get, set
[<System.ComponentModel.TypeConverter(typeof(System.Web.UI.WebControls.TargetConverter))>]
member this.Target : string with get, set
Public Overridable Property Target As String

プロパティ値

列内のハイパーリンクがクリックされたときにリンクされた Web ページを読み込む対象のウィンドウまたはフレーム。 既定値は空の文字列 ("") で、ウィンドウまたはフレームをフォーカスで更新します。

属性

次の例では、 Target プロパティを使用して、列内のハイパーリンクがクリックされたときにリンクされた Web ページの内容を表示するウィンドウを指定する方法を示します。 次の使用例は、リンクされた Web ページを新しいウィンドウに表示します。

次のコード サンプルでは、単一ファイルコード モデルを使用します。分離コード ファイルに直接コピーした場合、正しく動作しない可能性があります。 このコード サンプルは、.aspx拡張子が付いている空のテキスト ファイルにコピーする必要があります。 Web フォーム コード モデルの詳細については、「Web フォーム ページ コード モデル ASP.NET」を参照してください。

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

注釈

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

このプロパティが設定されていない場合、列内のハイパーリンクがクリックされると、フォーカスのあるブラウザーまたはウィンドウが更新されます。

Target プロパティは、target属性としてレンダリングされます。 XHTML 1.1 ドキュメント型定義では、anchor要素のtarget属性は使用できません。 HyperLinkColumnのレンダリングされた出力が XHTML 1.1 に準拠している必要がある場合は、Target プロパティを設定しないでください。 詳細については、 Visual Studio と ASP.NET の XHTML 標準に関するトピックを参照してください。

アクセス可能な Web ページを作成するときは、 Target プロパティを使用して別のウィンドウを対象としないことを強くお勧めします。 詳細については、「 アクセシビリティの ASP.NET」を参照してください。

Target値は、アンダースコアで始まる次の特殊な値を除き、A ~ Z の範囲の文字で始まる必要があります (大文字と小文字は区別されません)。

目標値 説明
_blank フレームなしで新しいウィンドウにコンテンツをレンダリングします。
_parent 即時フレームセット親のコンテンツをレンダリングします。
_search 検索ウィンドウにコンテンツをレンダリングします。
_self フレーム内のコンテンツをフォーカス付きでレンダリングします。
_top フレームを含まないフル ウィンドウでコンテンツをレンダリングします。

_search値がサポートされているかどうかを確認するには、ブラウザーのドキュメントを確認してください。 たとえば、Internet Explorer 5.0 以降では、 _search ターゲット値がサポートされています。

適用対象

こちらもご覧ください