Как создать элемент groupbox нажмите Listner в c # - PullRequest
1 голос
/ 17 марта 2019

У меня есть групповой блок с 2 элементами внутри. Я хочу, когда я нажимаю на один элемент внутри группы, тогда другой элемент должен быть отменен. Я могу сделать это, сделав отдельный слушатель для всех элементов. Вот так.

private void maleBox(object sender, MouseEventArgs e)
        {
            if (femaleCheckBox.Checked)
            {
                femaleCheckBox.Checked = false;
            }
        }

        private void femleBox(object sender, EventArgs e)
        {
            if (maleCheckBox.Checked)
            {
                maleCheckBox.Checked = false;
            }
        }

Но я хочу прослушиватель с одним щелчком мыши, который его обрабатывает. enter image description here

1 Ответ

1 голос
/ 17 марта 2019

Похоже, что вам действительно нужны радиокнопки.Добавьте групповое поле, а затем ваши радио-кнопки внутри этого.
Чтобы вызвать событие в случае изменения состояния переключателя, вам нужно добавить событие к каждому переключателю (насколько я знаю).Вы можете сделать это с циклом foreach на groupBox1.Controls.OfType<RadioButton>(), если вы не хотите делать это вручную.

Имейте в виду, что событие будет срабатывать дважды (один раз для выключения одного изатем в другой раз для включения одного).

Если вам действительно нужны флажки, вам все равно придется добавить событие для каждого, и вы все равно можете сделать это с помощью цикла foreach, просто переключите типконечно.

Надеюсь, это имеет смысл для вас:)

...