我在想为什么以下代码没有按照预期工作... 如果 if 语句改为 (!ctrl.checked),它将返回所有单选按钮的名称。
myForm f = new myForm();
foreach (RadioButton ctrl in f.Controls.OfType<RadioButton>())
{
if (ctrl.Checked)
MessageBox.Show(ctrl.Name);
}
我也尝试过。
foreach (Control c in f.controls)
if (c is radiobutton)
{
if (c.Checked)
{
messagebox.show(c.name);
}
当我将所有单选按钮放入一个组框中,并使用以下代码时:
foreach (RadioButton c in groupBox1.Controls)
{
if (c.Checked)
{
MessageBox.Show(c.Name);
}
}
它正常工作。
这里有什么区别。
感谢任何帮助。
Checked
属性。是否有任何单选按钮默认为true
的Checked
属性? - TyCobb