-1

我正在编写 C# 编码,单击提交按钮时遇到问题,并选择了几种不同的复选框答案组合,它们没有正确更新为“正确”或“不正确”。如果仅选中 Answer2 和 Answer3,如何将代码调整到仅显示“正确”标签的位置?即使选择了正确的答案之一,也会显示“不正确”。

if (Answer2.Checked && Answer3.Checked == true)
    {
        lblQuestionResult4.ForeColor = System.Drawing.Color.Green;
        lblQuestionResult4.Text = "Correct";
    }
    else
    {
        if (Answer1.Checked && Answer4.Checked == true)
        {
            lblQuestionResult4.ForeColor = System.Drawing.Color.Red;
            lblQuestionResult4.Text = "Incorrect";
        }
4

1 回答 1

0

这是一种方法。在您的代码段中,有未说明的条件。此代码通过假设最坏的情况来避免这种情况,并且仅在发生正确情况时设置值(即检查答案 2 和 3,而未检查所有其余情况)。

var color = System.Drawing.Color.Red; //assume incorrect answer
var label = "Incorrect";

if (Answer2.Checked && Answer3.Checked && !Answer1.Checked && !Answer4.Checked)
{
  //only the 2 correct answers have been checked
  color = System.Drawing.Color.Green;
  label = "Correct";
}

// set the controls
lblQuestionResult4.ForeColor = color;
lblQuestionResult4.Text = label;
于 2013-03-05T01:55:57.410 回答