В C# как очистить компонента RadioButton, когда вкладка изменения в элемент управления TabControl
Привет У меня есть приложение winforms в c# witch имеет tabControl с 3 страницами, каждая страница имеет 4 радиокнопки. Проблема в том, что когда я перехожу на другую вкладку и нажимаю кнопку RadioButton, она становится проверенной, но RadioButton на предыдущей странице также остается проверенным.
Существует ли какой-либо способ группировать все радиокнопки на всех страницах вместе, чтобы в любой момент времени проверялась только одна радиокнопка?
Я пытался ниже код, но получаю сообщение об ошибке селектина компонент RadioButton.
<pre lang="c#">Вы не можете привязать объект типа 'System.Окна.Формы.Метка' для типа 'System.Окна.Формы.RadioButton'.</pre>
Что я уже пробовал:
private void UncheckLayouts(TabPage activePage) { foreach (Control control in tabControl1.Controls) { if (control is RadioButton) { RadioButton rb = control as RadioButton; rb.Checked = false; } } } private void radioButton1_Click(object sender, EventArgs e) { UncheckLayouts(tabControl1.SelectedTab); } private void radioButton2_Click(object sender, EventArgs e) { UncheckLayouts(tabControl1.SelectedTab); }
Я не получаю никаких ошибок, но могу переключать вкладки, и радиокнопки остаются выбранными
Philippe Mori
Это плохой дизайн пользовательского интерфейса. Вы всегда должны видеть все связанные переключатели сразу.
И нет ничего сложного в том, чтобы снять переключатель, так как вам просто нужно установить его Checked
собственность на false
.