c# if 条件语句

我用四个CheckBox分别做了四个选项,选项依次命名为chbox01、chbox02、chbox03、chbox04。我现在就一个地方条件语句不对,若选项4被选中,其它... 我用四个CheckBox 分别做了四个选项,选项依次命名为chbox01、chbox02、chbox03、chbox04。
我现在就一个地方条件语句不对,若选项4被选中,其它1、2、3任何一项被选中,弹出的对话框不对,请帮我检查下。

if (chbox01.IsChecked == true && chbox02.IsChecked == true && chbox03.IsChecked == true && chbox04.IsChecked == true) { NewWindow_1 Form1 = new NewWindow_1("请仔细阅读选项认真作答!", 20); Form1.Show(); } else if (chbox01.IsChecked == false && chbox02.IsChecked == false && chbox03.IsChecked == false && chbox04.IsChecked == false) { NewWindow_1 Form1 = new NewWindow_1("请勾选你的答案!", 20); Form1.Show(); } else if (chbox01.IsChecked == true || chbox02.IsChecked == true || chbox03.IsChecked == true) { NewWindow_1 Form1 = new NewWindow_1("根据初步判断,您所描述的症状属于失眠!", 15); Form1.Show(); } else { NewWindow_1 Form1 = new NewWindow_1("经过初步判断,您不存在失眠症状,祝您继续保持!!", 20); Form1.Show(); }
展开
 我来答
syht2000
高粉答主

2015-11-24 · 关注我不会让你失望
知道大有可为答主
回答量:3万
采纳率:79%
帮助的人:1.4亿
展开全部

第一行改为 if ((chbox01.IsChecked || chbox02.IsChecked || chbox03.IsChecked) && chbox04.IsChecked )


注1:c#中的逻辑判断形如if(a==true)或者if(b==false)均可以写为if(a)或if(!b)

注2: 看你到这种代码比较头疼,其它有很多方法可以写(一般来说如果你代码中有重复代码,那些都是可以合并的),比如

int count=chbox01.IsChecked?1:0+chbox02.IsChecked?1:0+chbox03.IsChecked?1:0;
string msg="";
if(chbox04.IsChecked)
    if(count>0)  msg="请仔细阅读选项认真作答!";
    else msg="经过初步判断,您不存在失眠症状,祝您继续保持!!";
else if(count<=0)
    msg="请勾选你的答案!";
else msg="根据初步判断,您所描述的症状属于失眠!";
NewWindow_1 Form1 = new NewWindow_1(msg, 15);Form1.Show();
追问

按照你的简写,有报错,请继续指导,谢谢!

追答
鼠标移上去看具体错误是什么,VS解释的肯定很清楚了。
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
aaaagq
2015-11-24 · TA获得超过185个赞
知道小有建树答主
回答量:306
采纳率:0%
帮助的人:284万
展开全部
else if (chbox01.IsChecked == true || chbox02.IsChecked == true || chbox03.IsChecked == true)
            {
            //这里提前加个判断,如果第四个选项被选上就提示“请认真选择”
                if(chbox04.IsChecked)
                {
                    NewWindow_1 Form1 = new NewWindow_1("请勾选你的答案!", 20);
                                Form1.Show();
                }
                else
                {
                NewWindow_1 Form1 = new NewWindow_1("根据初步判断,您所描述的症状属于失眠!", 15);
                Form1.Show();
                }
            }
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式