私はVB.NETに4つtextboxes
あり、それらのユーザー入力を検証する必要があります。テキストボックスに入力されたデータによると、次のメッセージのいずれかを表示する必要があります。
スコア 1 は空白です
スコア 1 は数値ではありません
スコア 1 は範囲外です: 0-10
スコア 1 が有効
Score2
、Score3
、およびに対してこれを繰り返さなければなりませんScore4
。
これは私のコードです:
Public Class Form1
Dim vintScore As Integer = 1
Private Sub btn_Clear_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_Clear.Click
Call Clear()
End Sub
Private Sub btn_DefaultValues_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_DefaultValues.Click
Call DefaultValues()
End Sub
Private Sub btn_Validate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_Validate.Click
Call ValidateData(txt_score1.Text)
Call ValidateData(txt_score2.Text)
Call ValidateData(txt_score3.Text)
Call ValidateData(txt_score4.Text)
End Sub
Private Sub Clear()
txt_score1.Text = ""
txt_score2.Text = ""
txt_score3.Text = ""
txt_score4.Text = ""
txt_category.Text = ""
lbl_StatusContent.Text = "All Data Cleared!"
End Sub
Private Sub DefaultValues()
Call Clear()
txt_score1.Text = "4"
txt_score2.Text = "1"
txt_score3.Text = "2"
txt_score4.Text = "4"
txt_category.Text = "A"
lbl_StatusContent.Text = vbCrLf & "TextBox values set to default values"
End Sub
Private Sub ValidateData(ByVal vScore As String)
If (vScore = "") Then
lbl_StatusContent.Text = vbCrLf & "Score " & vintScore & " is blank"
ElseIf Not (IsNumeric(vScore)) Then
lbl_StatusContent.Text = vbCrLf & "Score " & vintScore & " is not numeric"
ElseIf (vScore < 0 And vScore > 10) Then
lbl_StatusContent.Text = vbCrLf & "Score " & vintScore & " is not in range: 0-10"
Else
lbl_StatusContent.Text = vbCrLf & "Score " & vintScore & " is Valid"
End If
vintScore = vintScore + 1
End Sub
End Class
私が現在出力として得ているものは次のとおりです。
スコア 4 は有効です
スコア 8 が有効です
スコア 12 は数値ではありません
等々...
私が求めているのはこれです:
スコア 1 が有効
スコア 2 は数値ではありません
スコア 3 は範囲外です: 0-10
スコア 4 は有効です
このような...