0

VB.Net に単純な追加プログラムがあり、テキスト ボックスが文字ではなく数字のみを受け取っているかどうかをテストしようとしています。TryParse メソッドを使用する必要がありますが、まだこのエラーが発生していることがわかりません。Plsヘルプ

Public Class perrySolutionForm
Dim numberOne As Double
Dim numberTwo As Double

Public Function sum(ByRef numberOne As Double, ByRef numberTwo As Double)
    sum = Val(numberOne) + Val(numberTwo)
End Function

Public Function difference(ByRef numberOne As Double, numberTwo As Double)     

difference = Val(numberOne) - Val(numberTwo)

End Function

Private Sub sumButton_Click(sender As Object, e As EventArgs) Handles sumButton.Click
    If numberOneInput.Text = "" Then
        MessageBox.Show("Both fields must be filled out.")
        If Double.TryParse(numberOneInput.Text, numberOne) Then
            MessageBox.Show("Success")
            'numberOne has a Double value
        Else
            MessageBox.Show("Failure")
            'numberOne = Nothing
        End If
    Else
        outputLabel.Text = sum(numberOne, numberTwo)
    End If
End Sub

Private Sub numberOneInput_TextChanged(sender As Object, e As EventArgs) Handles numberOneInput.TextChanged
    numberOne = numberOneInput.Text

End Sub

Private Sub numberTwoInput_TextChanged(sender As Object, e As EventArgs) Handles numberTwoInput.TextChanged
    numberTwo = numberTwoInput.Text

End Sub
4

1 に答える 1

1

TryParse の使用方法は次のとおりです。

If Double.TryParse(numberOneInput.Text, numberOne) Then
  'code for a success
  'numberOne has a Double value
Else
  'code for a failure
  'numberOne = Nothing
End If

テキストが空の場合、コード ブロックを終了します。

If String.IsNullOrWhiteSpace(numberOneInput.Text) Then 
   MessageBox.Show("Value is incorrect format")
   Exit Sub
End If
于 2013-09-21T01:13:13.367 に答える