C# 我怎样才能得到真正的价值?

C# 我怎样才能得到真正的价值?,c#,groupbox,C#,Groupbox,以下是所有代码: private void button1_Click(object sender, EventArgs e) { foreach (Control control in groupBox1.Controls) { MessageBox.Show(control.ToString()); } } 我只想得到true值 但是没有选中。 我怎样才能得到真正的价值? 如何获取每个索引?现在,您拥有所有控件,这就是为什么它们是control类型,

以下是所有代码:

private void button1_Click(object sender, EventArgs e)
{
    foreach (Control control in groupBox1.Controls)
    {
        MessageBox.Show(control.ToString());
    }
}
我只想得到
true
值 但是没有选中
。 我怎样才能得到真正的价值? 如何获取每个索引?

现在,您拥有所有控件,这就是为什么它们是control类型,而您在编译时不知道它们是什么

确保您只获取类型为
RadioButton

private void button1_Click(object sender, EventArgs e)
{
    foreach (RadioButton radioButton in groupBox1.Controls.OfType<RadioButton>())
    {
         MessageBox.Show(radioButton.Checked.ToString());
    }
}
private void按钮1\u单击(对象发送者,事件参数e)
{
foreach(groupBox1.Controls.OfType()中的RadioButton RadioButton)
{
Show(radioButton.Checked.ToString());
}
}
现在,您拥有所有控件,这就是为什么它们属于control类型,而您在编译时不知道它们是什么

确保您只获取类型为
RadioButton

private void button1_Click(object sender, EventArgs e)
{
    foreach (RadioButton radioButton in groupBox1.Controls.OfType<RadioButton>())
    {
         MessageBox.Show(radioButton.Checked.ToString());
    }
}
private void按钮1\u单击(对象发送者,事件参数e)
{
foreach(groupBox1.Controls.OfType()中的RadioButton RadioButton)
{
Show(radioButton.Checked.ToString());
}
}

什么是“真实值”?你期望得到什么样的结果?实际上你得到了什么?试着把它放到收音机上。基本控件类没有checked属性。首先将其强制转换为RadioButton,您的MessageBox已经声明了它是什么类型的控件Control只是controle它可以是任何东西。它不能被检查或取消检查。您应该过滤以仅获取单选按钮。用打字机button@HimBromBeere:
control.ToString()
包含屏幕截图中显示的文本,包括“Checked”值(该值在示例中恰好是
True
)。他们只想要那个选中的值,但找不到选中的属性(因为控件还没有被强制转换)。最简单的解决方案可能是
groupBox1.Controls.OfType()
,但我会让其他人写下来并收集代表:-)“真实值”是什么?你期望得到什么样的结果?实际上你得到了什么?试着把它放到收音机上。基本控件类没有checked属性。首先将其强制转换为RadioButton,您的MessageBox已经声明了它是什么类型的控件Control只是controle它可以是任何东西。它不能被检查或取消检查。您应该过滤以仅获取单选按钮。用打字机button@HimBromBeere:
control.ToString()
包含屏幕截图中显示的文本,包括“Checked”值(该值在示例中恰好是
True
)。他们只想要那个选中的值,但找不到选中的属性(因为控件还没有被强制转换)。最简单的解决方案可能是
groupBox1.Controls.OfType()
,但我会让其他人写下来并收集代表:-)