2013-05-14 2 views
0

Je travaille actuellement sur un examen en programmation utilisant VB, et j'essaye de faire deux sous-marins pour seulement la saisie de texte et seulement les valeurs numériques. Pour coder cela pour une zone de texte est facile, mais je ne peux pas me rappeler comment le faire pour plusieurs zones de texte où j'utilise un sous pour appeler la phrase If haut. (J'utilise les poignées textchange en VB pour contrôler l'entrée)Comment vérifier si une entrée est numérique ou non dans plusieurs TextBox?

Voici le code que j'utilisé pour vérifier une zone de texte:

If Not Regex.Match(txtRegansnr.Text, "^[a-å]*$", RegexOptions.IgnoreCase).Success Then 

MsgBox("Kun bokstaver tillatt.", , "Feil") 
     txtRegansnr.Clear() 
     txtRegansnr.Focus() 

End If 

J'ai essayé de modifier ce code, mais ne peux pas obtenir que cela fonctionne comme je veux à.

+0

passer les zones de texte pour les sous-marins en tant que paramètres par référence. – Renan

+0

Est-ce wpf, winforms de webforms? S'il vous plaît ajouter l'étiquette appropriée. – IvanH

+0

Ne vois pas comment cela est pertinent à ma question mais d'accord. –

Répondre

0

Mettre cela à l'intérieur du gestionnaire d'événements TextChanged:

Dim txtbox as TextBox = DirectCast(sender, TextBox) 

If Not Regex.Match(txtbox.Text, "^[a-å]*$", RegexOptions.IgnoreCase).Success Then 

    MsgBox("Kun bokstaver tillatt.", , "Feil") 
    txtbox.Clear() 
    txtbox.Focus() 

End If 

Append tous les champs de saisie à la liste Handles du gestionnaire ci-dessus:

Sub TextChanged(sender As Object, e As System.EventArgs) Handles txtRegansnr.TextChanged, txtBox1.TextChanged, txtBox2.TextChanged, ... 
+0

Merci pour la réponse;) a bien fonctionné. –

Questions connexes