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


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Обработка события щелчка элемента управления 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;

}

Переключатель RadioButton

Элемент управления Windows Forms RadioButton (переключатель, радиокнопка) обеспечивает выбор варианта из двух или более взаимоисключающих вариантов.

Функции переключателей и флажков могут показаться схожими, но между ними есть важное отличие: в случае переключателя пользователь может выбрать лишь один вариант. При выборе другого переключателя, предыдущий переключатель сбрасывается. Напротив, флажков можно выбрать любое количество. Определяя группу значений переключателя, разработчик формы предлагает пользователю набор вариантов, из которых может быть задан один и только один.

Радиокнопки объединяются в группы. На одной форме может быть несколько групп. Для первой кнопки каждой группы в ресурсном редакторе нужно установить при этом опцию Group, а для других кнопок группы она должна быть сброшена. Кнопки нумеруются в порядке значений их идентификаторов (то есть в порядке их создания в ресурсном редакторе). Если в диалоге все радиокнопки образуют одну группу, то опцию Group можно не устанавливать.

Радиокнопки управляются с помощью класса Button. Состояние радиокнопок можно изменять с помощью функции SetCheck() и читать с помощью функции GetCheck().

Хотя из программы можно установить сразу несколько радиокнопок или сбросить все, нормальный стиль программирования под Windows предполагает, что всегда будет установлена одна и только одна радиокнопка.

При щелчке элемента управления RadioButton, его свойству Checked задается значение true и вызывается обработчик событий Click. При изменении значения свойства Checked происходит событие CheckedChanged. Если свойство AutoCheck имеет значение true (принимается по умолчанию), то при выборе одного значения переключателя остальные значения группы автоматически сбрасываются. Значение false этому свойству присваивают только в тех случаях, когда в коде предусмотрена проверка допустимости выбранного варианта переключателя. Текст, связанный с этим элементом управления, задается свойством Text, которое также может определять клавиши быстрого доступа.

Элемент управления RadioButton может выглядеть как кнопка команды, которая отображается как нажатая при выбранном значении переключателя, если свойство Appearance имеет значение Button.

Примечание. Если радиокнопка одна, то событие CheckedChanged не срабатывает. Переключать такую кнопку можно только вручную непосредственно с помощью кода в событии Click:

private void radioButton2_Click(object sender, EventArgs e)

{ if (radioButton2.Checked==false)

{ Действия, выполняемые при включении радиокнопки;

}

else

{ Действия, выполняемые при выключении радиокнопки;

}

}

Пример. При включении радиокнопки поясняющая ее надпись становится красного цвета, при выключении – синего.

private void radioButton2_Click(object sender, EventArgs e)

{ if (radioButton2.Checked==false)

{ radioButton2.ForeColor = Color.Red;

radioButton2.Checked = true;

}

else

{ radioButton2.ForeColor = Color.Blue;

radioButton2.Checked = false;

}

}

Примечание. Если радиокнопка имеет формат Button, то свойство Checked становится недоступным для чтения, а событие CheckedChanged не срабатывает. Переключать такую кнопку можно только вручную непосредственно с помощью кода в событии Click. В следующем примере при щелчке по радиокнопке меняется ее формат с Normal на Button и обратно. Начальное состояние включенная радиокнопка.

private void radioButton1_Click(object sender, EventArgs e)

{

if (radioButton1.Appearance == Appearance.Button)

{

radioButton1.Appearance = Appearance.Normal;

}

else

if (radioButton1.Checked)

{

radioButton1.Appearance = Appearance.Button;

};

}

В переключателях можно также отображать рисунки с помощью свойств Image и ImageList.



Поделиться:


Последнее изменение этой страницы: 2017-01-20; просмотров: 570; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.146.105.137 (0.01 с.)