Sandra:
Bueno en ese caso lo que se me ocurre es lo siguiente, establecer con la propiedad tabindex el orden en que los controles toman el foco, y en tiempo de diseño establecer la propiedad locked de todos los controles menos el primero a true, y luego en el evento keyup o key pressed o keydown(segun la necesidad)creas una validacion del campo... una vez que es valido el valor ingresado, desbloqueas el siguiente control (ahora se me ocurre que podes asignar al valor Tag de cada control el mimo valor que tab index para poder saber cual es el prox control y lo manejas con una variable)... te lo trato de esquematizar
dim contador as integer
Textbox1 tag=1
textbox2 tag=2
textbox3 tag=3
...
en los eventos de teclado validas lo que se introdujo(mas abajo te pongo el codigo de un textxbox solo para mails que se valida de esta forma)
una vez que es valido, desbloqueas el siguiente control y le pasas el foco
aca va el codigo
================================================================
Public Class MailBox
Private ok As Boolean = True
Private valor As String
Private Function tienearroba(ByVal texto As String) As Boolean
Dim i As Integer
Dim contador As Byte
contador = 0
For i = 1 To Len(texto)
If Strings.Mid(texto, i, 1) = "@" Then
contador += 1
End If
Next
If contador = 1 Then
Return True
Else
Return False
End If
End Function
Private Function tienepunto(ByVal texto As String) As Boolean
Dim i As Integer
For i = 1 To Len(texto)
If Strings.Mid(texto, i, 1) = "." And tienearroba(Strings.Mid(texto, 1, i)) Then
Return True
End If
Next
End Function
Public ReadOnly Property mailcorrecto() As Boolean
Get
Return ok
End Get
End Property
Public Shadows Property text() As String
Get
Return valor
End Get
Set(ByVal value As String)
Me.TextBox1.Text = value
valor = value
End Set
End Property
Private Sub TextBox1_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles TextBox1.KeyUp
If Not tienearroba(TextBox1.Text) Or Not tienepunto(TextBox1.Text) Then
TextBox1.ForeColor = Drawing.Color.Red
ok = False
valor = TextBox1.Text
Else
TextBox1.ForeColor = Drawing.Color.Black
ok = True
valor = TextBox1.Text
End If
End Sub
End Class
================================================================
como podras apreciar existe una propiedad o metodo booleano del objeto que se puede consultar para saber si es o no correcto
Bueno, espero que te halla sido de utilidad
Saludos