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

状態を truefalse の間で切り替えることのできるチェック ボックスを作成します。

<asp:CheckBox id="CheckBox1" 
     AutoPostBack="True|False"
     Text="Label"
     TextAlign="Right|Left"
     Checked="True|False"
     OnCheckedChanged="OnCheckedChangedMethod"
     runat="server"/>

解説

CheckBox コントロールは、状態を truefalse の間で切り替えることのできるチェック ボックスを Web フォーム ページに作成します。Text プロパティを設定して、コントロールに表示するキャプションを指定できます。キャプションは、チェック ボックスの左右のいずれかに表示できます。キャプションを表示する側を指定するには、TextAlign プロパティを設定します。

メモ   <asp:CheckBox> 要素には内容が含まれないため、個別に終了タグを使用する代わりに /> でタグを閉じることができます。

CheckBox コントロールがオンになっているかどうかを判断するには、Checked プロパティを調べます。サーバーへの複数のポスト バック間に CheckBox コントロールの状態が変更されると、CheckedChanged イベントが発生します。CheckedChanged イベントのイベント ハンドラを指定して、サーバーへのポスト バック間に CheckBox コントロールの状態が変更されたときに特定のタスクを実行できます。

メモ   複数の CheckBox コントロールを作成するときは、CheckBoxList コントロールも使用できます。データ連結を使用してチェック ボックスのセットを作成する場合は、CheckBoxList コントロールを使用する方が簡単です。しかし、個別の CheckBox コントロールを使用する方が、レイアウトを柔軟に制御できます。

既定では、CheckBox コントロールは、クリックされたときにサーバーにフォームを自動的にはポスト バックしません。自動ポスト バックを有効にするには、AutoPostBack プロパティを true に設定します。

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

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

.aspx ファイルで CheckBox コントロールを宣言する方法を次の例に示します。チェック ボックスがオンになると、すぐにサーバーにフォームをポスト バックするように設定されています。

<asp:CheckBox id=Check1 runat="server"
     Text="CheckBox 1"
     AutoPostBack="True"/>

顧客の請求先住所が含まれているテキスト ボックスの内容を、出荷先住所が含まれるテキスト ボックスにコピーする、CheckedChanged イベントのイベント ハンドラを作成する方法を次の例に示します。

<%@ Page Language="VB" AutoEventWireup="True" %>

<html>
<head>

   <script runat="server">

      Sub Check_Clicked(sender As Object, e As EventArgs) 

         If SameCheckBox.Checked Then
            ShipTextBox.Text = BillTextBox.Text
         Else
            ShipTextBox.Text = ""
         End If

      End Sub

   </script>

</head>

<body>

   <form runat="server">

      <h3>CheckBox Example</h3>








      <table>
         <tr>
            <td>
               Billing Address: <br>
               <asp:TextBox id="BillTextBox"
                    TextMode="MultiLine"
                    Rows="5" 
                    runat="server"/>
            </td>
            <td>
               Shipping Address: <br>
               <asp:TextBox id="ShipTextBox"
                    TextMode="MultiLine"
                    Rows="5" 
                    runat="server"/>
            </td>
         </tr>
         <tr>
            <td>
            </td>
            <td>
               <asp:CheckBox id="SameCheckBox"
                    AutoPostBack="True"
                    Text="Same as billing."
                    TextAlign="Right"
                    OnCheckedChanged="Check_Clicked"
                    runat="server"/>
            </td>
         </tr>
      </table>
            
   </form>
        
</body>
</html>
[C#]
<%@ Page Language="C#" AutoEventWireup="True" %>
<html>
<head>

   <script runat="server">

      void Check_Clicked(Object sender, EventArgs e) 
      {
         if(SameCheckBox.Checked)
            ShipTextBox.Text = BillTextBox.Text;
         else
            ShipTextBox.Text = "";
      }

   </script>

</head>

<body>

   <form runat="server">

      <h3>CheckBox Example</h3>








 <table>
         <tr>
            <td>
               Billing Address: <br>
               <asp:TextBox id="BillTextBox"
 TextMode="MultiLine"
                    Rows="5" 
                    runat="server"/>
            </td>
            <td>
               Shipping Address: <br>
               <asp:TextBox id="ShipTextBox"
                    TextMode="MultiLine"
                    Rows="5" 
                    runat="server"/>
            </td>
         </tr>
         <tr>
            <td>
            </td>
            <td>
               <asp:CheckBox id="SameCheckBox"
                    AutoPostBack="True"
                    Text="Same as billing."
                    TextAlign="Right"
                    OnCheckedChanged="Check_Clicked"
                    runat="server"/>
            </td>
         </tr>
      </table>
            
   </form>
        
</body>
</html> 

参照

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