I can't seem to prevent my form from checking one of the Radio Buttons in my Group Box
:
As shown in the designer, no Radio Buttons are checked there.
Below is just about all of the code for this simple form. Nothing calls for a Radio Buttons to be checked here or in the form's designer.
Q: Is there a way to prevent any Radio Button from being checked when the form loads?
public ValueTypeSelector() { InitializeComponent(); radioButton1.Checked = false; radioButton2.Checked = false; radioButton3.Checked = false; radioButton4.Checked = false; radioButton5.Checked = false; radioButton6.Checked = false; button1.Enabled = false; button1.Click += clickEvent; button2.Click += clickEvent; radioButton1.Click += clickEvent; radioButton2.Click += clickEvent; radioButton3.Click += clickEvent; radioButton4.Click += clickEvent; radioButton5.Click += clickEvent; radioButton6.Click += clickEvent; } void OnShow(object sender, EventArgs e) { foreach (RadioButton rad in Controls) { if (rad.Checked) { Console.WriteLine("WTF?"); } } } void clickEvent(object sender, EventArgs e) { RadioButton rad = sender as RadioButton; if (rad != null) { if (rad.Checked) { if (rad == radioButton1) { DataType = TableDataType.Boolean; // <= HERE IS THE PROBLEM! FIRES ON FORM LOAD } else if (rad == radioButton2) { DataType = TableDataType.Character; } else if (rad == radioButton3) { DataType = TableDataType.DateTime; } else if (rad == radioButton4) { DataType = TableDataType.Decimal; } else if (rad == radioButton5) { DataType = TableDataType.Integer; } else if (rad == radioButton6) { DataType = TableDataType.String; } else { return; } button1.Enabled = true; } } else if (sender == button1) { DialogResult = DialogResult.OK; Close(); } else if (sender == button2) { DialogResult = DialogResult.Cancel; Close(); } }
UPDATE: The problem is that radioButton1
gets checked when the form is shown:
if (rad == radioButton1) { DataType = TableDataType.Boolean; // <= HERE IS THE PROBLEM! FIRES ON FORM LOAD } else if (rad == radioButton2) {
You can check a radio button by default by adding the checked HTML attribute to the <input> element. You can disable a radio button by adding the disabled HTML attribute to both the <label> and the <input> .
A radio button or option button is a graphical control element that allows the user to choose only one of a predefined set of mutually exclusive options. The singular property of a radio button makes it distinct from checkboxes, where the user can select and unselect any number of items.
The check box portion of a RadioButton is moved to the right or left of the text when the Checked value changes.
Make sure your radiobuttons are NOT the first tabindex = 0 controls. Make the OK button tabindex=0, followed by the radiobuttons.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With