我正在使用visual studio上的Windows窗体创建一个C#测验。 问题是“健康的男女青少年学生每分钟的平均节拍是多少?” 然后可能的答案是四个复选框,用户必须选择两个答案。 当用户选择他们的答案时,会有一个按钮,并将其移动到下一个表单上。 在继续之前,如何使用IF语句验证用户是否已选择任意两个答案(不一定是正确答案)。 用户必须先选择两个答案才能继续前进,或者显示一个消息框以确保他们知道选择两个答案。在IF这个词之后,我正在努力填写括号。非常感谢!
private void btnNextQuestion_Click(object sender, EventArgs e)
{
if ()
{
MessageBox.Show("Please select two answers.");
}
else
{
this.Hide();
frmQuestionFour frm = new frmQuestionFour();
frm.Show();
答案 0 :(得分:1)
你需要做这样的事情:
int count = 0;
if (chk1.Checked) count++;
if (chk2.Checked) count++;
if (chk3.Checked) count++;
if (chk4.Checked) count++;
if (count == 2)
如果您已将复选框引用放入集合中,则还可以使用Linq执行此操作:
if (checkboxes.Where(chk => chk.Checked).Count() == 2)
如果屏幕上的四个复选框是 only 复选框,您可以尝试这样做:
if (Controls.OfType<CheckBox>().Where(chk => chk.Checked).Count() == 2)