Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Методичка по C#.doc
Скачиваний:
259
Добавлен:
08.11.2018
Размер:
5.81 Mб
Скачать
      1. Переключатель CheckBox

Элемент управления CheckBox (Windows Forms) указывает, включено или отключено какое-либо конкретное условие.

Обычно переключатель используется для представления пользователю выбора типа "Да/Нет" или "Истина/Ложь". Когда флажок установлен, он отображается в элементе управления. Элементы управления типа "флажок" можно объединять в группы для предоставления пользователю нескольких вариантов выбора. В такой группе пользователь может установить один или несколько флажков.

Элементы управления "флажок" и "переключатель" сходны в том, что каждый используется для указания варианта, выбранного пользователем. Их отличие заключается в том, что в группе переключателей можно выбрать только один элемент. В группе флажков можно выбрать любое количество элементов.

Флажок можно подключить к элементам базы данных путем связывания данных. Несколько флажков объединяются в группу с помощью элемента управления GroupBox. Это средство используется для простоты представления в структуре интерфейса пользователя, поскольку в конструкторе форм сгруппированные элементы управления можно перемещать одновременно.

Элемент управления CheckBox имеет два важных свойства: Checked (текущее состояние: включен/выключен) и CheckState (текущее состояние: включен/выключен/неопределен). Свойство Checked возвращает true или false. Свойство CheckState возвращает или значение Checked, или значение Unchecked; если же для свойства ThreeState установлено значение true, то свойство CheckState может возвращать значение Indeterminate. При неопределенном состоянии поле флажка отображается затененным, что означает недоступность параметра.

Эти два свойства работают синхронно, если для свойства ThreeState установлено значение false.

Обработка события щелчка элемента управления CheckBox

Если щелкнуть элемент управления Windows Forms CheckBox, происходит событие CheckedChanged. В приложении можно задать выполнение определенного действия в зависимости от состояния флажка.

Чтобы ответить на щелчок элемента управления CheckBox в обработчике события CheckedChanged с помощью свойства Checked определите состояние элемента управления и выполните необходимое действие.

private void checkBox1_CheckedChanged(object sender, EventArgs e)

{

if (checkBox1.Checked) {операции, выполняемые если флажок включен};

else {операции, выполняемые если флажок выключен};

}

Примечание. Если дважды щелкнуть элемент управления CheckBox, каждый щелчок будет обрабатываться отдельно.

Примечание. Если для свойства AutoCheck задано значение true (значение по умолчанию), элемент управления CheckBox автоматически меняет состояние при щелчке. В противном случае необходимо вручную задать свойство Checked при возникновении события Click.

Чтобы ответить на щелчок элемента управления CheckBox в обработчике события CheckedChanged с помощью свойства CheckState определите состояние элемента управления и выполните необходимое действие.

private void checkBox1_ CheckedChanged (object sender, System.EventArgs e)

{ switch(checkBox1.CheckState)

{

case CheckState.Checked:

{ операции, выполняемые если флажок включен;.

break;};

case CheckState.Unchecked:

{ операции, выполняемые если флажок выключен;.

break;};

case CheckState.Indeterminate:

{ операции, выполняемые если флажок отключен;.

break;}

}

}

Примечание. Если свойство ThreeState имеет значение true, свойство Checked возвращает true как для включенного состояния (значение Checked у свойства CheckState), так и для неопределенного (значение Indeterminate у свойства CheckState).

Настройка параметров других элементов управления или приложения с помощью элемента управления CheckBox

Задайте начальное значение свойства Checked и параметры в случае, когда флажок будет соответствовать положениям «включен» и «выключен».

При изменении положения флажка в работающем приложении срабатывает событие CheckedChanged.

В приведенном ниже примере кода при вызове события CheckedChanged элемента управления CheckBox для свойства кнопки Visible (видимость) задается значение true, если флажок установлен и false в противном случае.

private void checkBox1_CheckedChanged(object sender, EventArgs e)

{ if (checkBox1.Checked) button11.Visible = true;

else button11.Visible = false;

}