Проверьте, проверена ли RadioButton из события Checkaged - PullRequest
0 голосов
/ 10 мая 2019

Мне нужно проверить, проверена ли RadioButton из события checkaged

private void radioButton6_CheckedChanged_2(object sender, EventArgs e)
{
    if(radioButton6.Checked)
    {

    }
}

Правильно ли это делать? Могу ли я получить доступ к состоянию CheckBox из объекта отправителя?

1 Ответ

1 голос
/ 10 мая 2019

Правильно ли это делать?

Это зависит. Если вам нужно, чтобы каждая радио-кнопка была очень отличительной. Значение: вам действительно нужно проверить внутри метода события:

if(radioButton6.Checked)

Тогда это путь. Другой случай, когда это может быть применено, это когда вы зарегистрировали отдельный обработчик событий для каждой кнопки-переключателя. Затем вы можете получить доступ к кнопке напрямую, потому что в этом случае отправитель всегда будет, например, radioButton6.

Могу ли я получить доступ к состоянию CheckBox из объекта отправителя?

Да, вы можете. Это может быть целесообразно в этом случае: если вы решите зарегистрировать один и тот же метод для нескольких событий переключателя, вы можете использовать отправителя и привести его. Это может сэкономить вам много двойного кода.

private void radioButton6_CheckedChanged_2(object sender, EventArgs e)
{
    RadioButton button = sender as RadioButton;
    if(button?.Checked == true)
    {

    }
}

В таком случае вы можете использовать свойство Tag RadioButton, чтобы различать их. Установите его в начале, а затем вы можете проверить его.

...