如果错误,继续通过If语句

时间:2015-03-21 19:50:52

标签: vb.net if-statement

我正在尝试为我的程序创建一个简单的忽略列表选项。当子运行时,如果用户在列表中并且选中了复选框,我希望它不执行某些代码。

我试过这个:

If Not My.Settings.IgnoredNames.Contains(PartnerDisplayName) AndAlso chkIgnore.Checked = False) Then
    'Do something...
End If

这是有效的,除非单独选中复选框,否则if语句不会继续。我不知道如何重写它。

这也行不通,我真的不知道为什么。子触发某个API事件,并像这样退出它仍然让真实的代码通过。

If My.Settings.IgnoredNames.Contains(ParterDisplayName) And chkIgnore.Checked = True Then Exit Sub
'Do something...

1 个答案:

答案 0 :(得分:1)

不要使用Nots并创建凌乱的逻辑,只需反转您的If语句,如果您遇到不想运行代码的情况,请将其短路:

If My.Settings.IgnoredNames.Contains(PartnerDisplayName) AndAlso chkIgnore.Checked = True Then
    Return
End If
' Do your other logic here.