[英]Moving on with points using check boxes and if statement
我正在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();
您需要執行以下操作:
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)
而且,如果四個復選框是屏幕上唯一的復選框,則可以嘗試以下操作:
if (Controls.OfType<CheckBox>().Where(chk => chk.Checked).Count() == 2)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.