共用方式為


如何:回應 Windows Form CheckBox 按一下動作

每當使用者按一下 Windows Forms CheckBox 控制項時,就會發生 Click 事件。 您可以根據核取方塊的狀態,將應用程式程式設計為執行某些動作。

若要回應 CheckBox 點選

  1. Click 事件處理常式中,使用 Checked 屬性來判斷控制項的狀態,並執行任何必要的動作。

    Private Sub CheckBox1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckBox1.Click
       ' The CheckBox control's Text property is changed each time the
       ' control is clicked, indicating a checked or unchecked state.
       If CheckBox1.Checked = True Then
          CheckBox1.Text = "Checked"
       Else
          CheckBox1.Text = "Unchecked"
       End If
    End Sub
    
    private void checkBox1_Click(object sender, System.EventArgs e)
    {
       // The CheckBox control's Text property is changed each time the
       // control is clicked, indicating a checked or unchecked state.
       if (checkBox1.Checked)
       {
          checkBox1.Text = "Checked";
       }
       else
       {
          checkBox1.Text = "Unchecked";
       }
    }
    
    private:
       void checkBox1_CheckedChanged(System::Object ^ sender,
          System::EventArgs ^ e)
       {
          if (checkBox1->Checked)
          {
             checkBox1->Text = "Checked";
          }
          else
          {
             checkBox1->Text = "Unchecked";
          }
       }
    

    備註

    如果使用者嘗試按一下 CheckBox 控制項,則會個別處理每次點選;也就是說,CheckBox 控制項不支援按兩下事件。

    備註

    AutoCheck 屬性為 true (預設值) 時,CheckBox 會在點選時自動選取或清除。 否則,您必須在 Click 事件發生時手動設定 Checked 屬性。

    您也可以使用 CheckBox 控制項來判斷動作的過程。

若要判斷按一下核取方塊時的動作

  1. 使用大小寫陳述式來查詢 CheckState 屬性的值,以判斷動作的過程。 當 ThreeState 屬性設定為 true 時,CheckState 屬性可能會傳回三個可能的值,代表正在核取的方塊、未核取的方塊,或以灰色外觀顯示該方塊的第三個不確定狀態,以表示選項無法使用。

    Private Sub CheckBox1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles CheckBox1.Click
       Select Case CheckBox1.CheckState
          Case CheckState.Checked
             ' Code for checked state.
          Case CheckState.Unchecked
             ' Code for unchecked state.
          Case CheckState.Indeterminate
             ' Code for indeterminate state.
       End Select
    End Sub
    
    private void checkBox1_Click(object sender, System.EventArgs e)
    {
       switch(checkBox1.CheckState)
       {
          case CheckState.Checked:
             // Code for checked state.
             break;
          case CheckState.Unchecked:
             // Code for unchecked state.
             break;
          case CheckState.Indeterminate:
             // Code for indeterminate state.
             break;
       }
    }
    
    private:
       void checkBox1_CheckedChanged(System::Object ^ sender,
          System::EventArgs ^ e)
       {
          switch(checkBox1->CheckState) {
             case CheckState::Checked:
                // Code for checked state.
                break;
             case CheckState::Unchecked:
                // Code for unchecked state.
                break;
             case CheckState::Indeterminate:
                // Code for indeterminate state.
                break;
          }
       }
    

    備註

    ThreeState 屬性設定為 true 時,Checked 屬性會針對 CheckedIndeterminate 傳回 true

另請參閱