Is there a way to convert some code like this:
If someString <> "02" And someString <> "03" And someString <> "06" And someString <> "07" Then
btnButton.Enabled = False
End If
kinda into something like this (multiple values for one variable)
If someString <> "02", "03", "06", "07" Then
btnButton.Enabled = False
End If
Would Contains
work?
Dim testAgainst As String() = {"02","03","06","07"}
If Not testAgainst.Contains(someString) Then
btnButton.Enabled = False
End If
You can (ab)use Select
for this in simple cases:
Select Case someString
Case "02", "03", "06", "07"
Case Else
btnButton.Enabled = False
End Select
Also, a common extension that I use is:
<Extension()>
Function [In](Of TItem, TColl)(this As TItem, ParamArray items() As TColl)
Return Array.IndexOf(items, this) > -1
End Function
So:
If Not someString.In("02", "03", "06", "07") Then
btnButton.Enabled = False
End If
Dim invalidvalues As New List(Of String) From { _
"02", _
"03,", _
"04", _
"07" _
}
If invalidvalues.Contains(x) Then
btnButton.Enabled = False
End If
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With