Попробуйте Trim()
строку перед передачей в функцию. Кроме того, вместо использования специфической для VB функции, такой как IsNumeric
, вы можете попробовать такой подход:
Dim input as Integer
If Integer.TryParse(txtProductID.Text, input) Then
....do stuff with input
Else
Dim msg as String = "Error!"
End if
Если ваш номер является десятичным числом, для Double
и Single
также есть соответствующие функции.
Что касается конкретной причины, по которой IsNumeric
терпит неудачу, я не могу вам сказать. Однако я могу вам сказать, что мне всегда было полезно придерживаться BCL-совместимых функций, которые не зависят от языка, а зависят от языка, например IsNumeric
, Str
и т. Д.