次のコードを使用して、テキスト ボックスのユーザー入力をエラー チェックしています。
Private Sub txtDeadLoadFactor_TextChanged(sender As Object, e As EventArgs) Handles txtDeadLoadFactor.TextChanged
Dim invalidEntry As Boolean
If IsNumeric(txtDeadLoadFactor.Text) And Not txtDeadLoadFactor.Text = vbNullString Then
If Not txtDeadLoadFactor.Text > 0 Then
invalidEntry = True
End If
Else
invalidEntry = True
End If
If invalidEntry Then
MsgBox("Please only enter numeric data greater than 0 in all fields!", MsgBoxStyle.Critical, "Invalid Input!")
txtDeadLoadFactor.Text = vbNullString
invalidEntry = False
Else
gDeadLoadFactor = txtDeadLoadFactor.Text
End If
End Sub
無効なエントリがあると、メッセージ ボックスが 2 回表示されます。これは、textbox.text を nullstring に設定し直したことが原因です。それが起こらないようにする方法もわかりません。また、誰かがこの厄介なコードをきれいにするのを手伝ってくれるなら、それはありがたいです。
ありがとうございました!