Практическое руководство. Реагирование на нажатие флажка Windows Forms
Когда пользователь щелкает элемент управления CheckBox Windows Forms, происходит событие Click. Приложение можно запрограммировать для выполнения некоторых действий в зависимости от состояния флажка.
Реагирование на щелчки CheckBox
В обработчике событий 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 автоматически выбирается или очищается по щелчку. В противном случае необходимо вручную задать свойство Checked при возникновении события Click.Вы также можете использовать элемент управления CheckBox для определения курса действий.
Определение курса действия при нажатии флажка
Используйте инструкцию case для запроса значения свойства 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 возвращаетtrue
для Checked и Indeterminate.
См. также
- CheckBox
- Обзор элемента управления CheckBox
- Как: Установить параметры с помощью элементов управления CheckBox в Windows Forms
- элемент управления CheckBox
.NET Desktop feedback