1

テキスト ボックスに入力された電子メール アドレスを検証しようとしています。ユーザーが無効な電子メール アドレスで電子メール アドレス フィールドを離れたときに、「電子メール アドレスが無効です」というエラー メッセージが表示されるようにします。

これは私がモジュールの下に持っているものです:

Module Connection
Sub ValidateEmail(Byval mail as String)
Dim email as new System.Text.RegularExpressions.Regex("\S+@\S+\.\S+")

If email.IsMatch(mail) Then
Else
MsgBox("The Email is Not Valid",msgBoxStyle.Critical,"Invalid Email")
End If
End Sub

End Module

次に、メールのテキスト ボックスをダブルクリックして、次のコードを入力します。

If txtemail.text = " " Then
Else
ValidateEmail(txtemail.text)
End If

プログラムを実行すると、メールアドレスの入力を完了できず、最初の文字を入力すると、「メールが無効です」というエラーメッセージが表示されます。メールの入力を完了できるようにしたい次のフィールドに移動すると、電子メールが有効でない場合にメッセージが表示されます。

ここで私の問題を理解している人は誰でも助けてください。

ありがとうございました

4

2 に答える 2

4

ダブルクリックすると、テキストボックス内のテキストが変更されるたびに発生するイベントハンドラーがTextBox作成されます。代わりに、フォーカスが失われたときに発生するイベント、つまりをサブスクライブする必要があります。イベントをサブスクライブするには、 F4 をクリックして [プロパティ] ウィンドウを開き、タブに移動し、イベントを見つけてダブルクリックします。TextBox_TextChangedTextBoxTextBox_LeaveLeaveTextBoxEventsLeave

于 2013-10-13T12:39:42.160 に答える
0

OnChange イベントを使用しています

Onleave を使用できます。エラーが発生した場合は、フォーカスをテキスト ボックスに戻します。Onchange に特定の金額が入力されるまで、有効な形式のチェックをスキップできますが、onLeave で完全なチェックを行うことができます。

上記のいずれも影響を及ぼします。おそらく、後の機能の一部が電子メールを有効にする必要があるからです。そのため、送信または保存を試みる前にもう一度確認する必要があります。

または、メッセージ ボックスを使用して通知を取り除くこともできます。たとえば、無効なときにエラー イメージを表示することができます。有効なパターンに依存する後の機能は、「エラー コンポーネント」が表示されているかどうかを確認するだけです。Web ページのフォームを検証してほしいと思います。

最後の 1 つは、メッセージ ボックス エラーの大ファンではなく、私の好みです。

于 2013-10-13T12:38:50.013 に答える