LinkButton Web サーバー コントロール

Web フォーム ページにハイパーリンク スタイル ボタンを作成します。

<asp:LinkButtonid="LinkButton1"      Text="label"     Command="Command"     CommandArgument="CommandArgument"     CausesValidation="true | false"     OnClick="OnClickMethod"     runat="server"/>
or
<asp:LinkButtonid="LinkButton1"     Command="Command"     CommandArgument="CommandArgument"     CausesValidation="true | false"     OnClick="OnClickMethod"     runat="server"/>   Text</asp:LinkButton>

解説

LinkButton コントロールを使用して、Web フォーム ページにハイパーリンク スタイル ボタンを作成できます。LinkButton コントロールに表示するテキストを指定するには、Text プロパティを設定するか、LinkButton コントロールの開始タグと終了タグの間にテキストを挿入します。送信ボタンまたはコマンド ボタンを作成できます。

メモ   LinkButton コントロールの外観は HyperLink コントロールの外観と同じですが、機能は Button コントロールと同じです。コントロールをクリックしたときに別の Web ページにリンクするには、HyperLink コントロールを使用します。

submit ボタンには関連付けられているコマンド名がなく、その機能は単に Web ページをサーバーにポスト バックするだけです。既定では、LinkButton コントロールは submit ボタンです。Click イベントのイベント ハンドラを作成して、submit ボタンがクリックされたときに実行するアクションをプログラムにより制御できます。

command ボタンには、CommandName プロパティを設定することによって、Sort などのコマンド名を関連付けることができます。これにより、Web ページ上に複数の LinkButton コントロールを作成し、その LinkButton コントロールがクリックされたのかをプログラムによって判断できます。command ボタンで CommandArgument プロパティを使用して、Ascending などの実行するコマンドに関する追加情報を指定することもできます。Command イベントのイベント ハンドラを作成して、コマンド ボタンがクリックされたときに実行するアクションをプログラムで制御できます。

メモ   LinkButton コントロールは、JavaScript をクライアント ブラウザに描画します。このコントロールが正常に動作するには、クライアント ブラウザで JavaScript が有効になっている必要があります。クライアント スクリプトの詳細については、「Web フォーム ページのクライアント スクリプト」を参照してください。

既定では、LinkButton コントロールがクリックされたときに、ページの検証が行われます。ページ検証では、ページ上の検証コントロールに関連付けられている入力コントロールが、その検証コントロールによって指定されている入力規則を満たしているかどうかが確認されます。reset ボタンなど、この動作を無効にする必要がある LinkButton コントロールの場合は、CausesValidation プロパティを false に設定します。

注意   テキストは、LinkButton コントロールに表示される前には HTML エンコードされません。これにより、テキストの HTML タグ内にスクリプトを埋め込むことができるようになります。コントロールの値がユーザーによって入力された場合は、セキュリティの脆弱性への対策として、入力された値を必ず検証してください。

LinkButton Web サーバー コントロールのプロパティとイベントの詳細については、LinkButton クラスのドキュメントを参照してください。

LinkButton コントロールを使用して、コントロールがクリックされたときにメッセージを表示する方法を次の例に示します。

<%@ Page Language="VB" AutoEventWireup="True" %>
<html>
<head>
   <script runat="server">
      Sub LinkButton_Click(sender As Object, e As EventArgs) 
         Label1.Text = "You clicked the link button"
      End Sub
   </script>
</head>
<body>
   <form runat="server">
      <h3>LinkButton Example</h3>
      <asp:LinkButton id="LinkButton1" 
           Text="Click Me" 
           Font-Name="Verdana" 
           Font-Size="14pt" 
           OnClick="LinkButton_Click" 
           runat="server"/>
      <p>
      <asp:Label id=Label1 runat=server />
   </form>
</body>
</html>
[C#]
<%@ Page Language="C#" AutoEventWireup="True" %>
<html>
<head>
   <script runat="server">
      void LinkButton1_Click(Object sender, EventArgs e) 
      {
         Label1.Text="You clicked the link button";
      }
   </script>
</head>
<body>
   <form runat="server">
      <h3>LinkButton Example</h3>
      <asp:LinkButton id="LinkButton1"
           Text="Click Me!" 
           Font-Name="Verdana" 
           Font-Size="14pt" 
           OnClick="LinkButton1_Click" 
           runat="server"/>
      &nbsp;&nbsp;
      <asp:Label id=Label1 
           runat=server />
   </form>
</body>
</html>

参照

Web サーバー コントロール | LinkButton クラス