验证无线电盒
我只是试图检查三个无线电盒中的一个已被检查,因为某些原因,即使在调试控制台中的所有盒子'.Selected = false'仍然跳过我的错误消息。任何帮助表示赞赏。验证无线电盒
if ((rdoIndoor.Checked = false) && (rdoOut.Checked = false) && (rdoSwimming.Checked = false))
{
MessageBox.Show("Please select an event style");
}
您正在使用赋值运算符而不是比较运算符。 =
运营商用于分配。使用==
进行比较。
更重要的是,获得完全摆脱你==
运营商,并使用!
运营商,像这样:
if (!rdoIndoor.Checked && !rdoOut.Checked && !rdoSwimming.Checked)
{
MessageBox.Show("Please select an event style");
}
当然是了,谢谢。 :) – Wizard 2012-04-16 20:40:39
等于运算符,用于比较值,是==
所以,你的代码应该是:
if ((rdoIndoor.Checked == false) &&
(rdoOut.Checked == false) &&
(rdoSwimming.Checked == false))
......
使用双等于符号(rdoIndoor.Checked **==** false)
等 单'='表示分配,即i。即从现在开始让'rdoIndoor.Checked'为假。 Double'=='是逻辑测试。 你可能知道;)
我确实这样做了,虽然会让我花费更多的时间去解决问题。 – Wizard 2012-04-16 20:51:33
我觉得简单的语法错误。将'='替换为'==' – 2012-04-16 20:40:13
您使用赋值运算符是一回事,但您也可以(!rdoIndoor.Checked)而不是== false – Oztaco 2012-04-16 20:40:46