Una forma de presentar los errores de validación de nuestros formularios, es con el control ErrorProvider, algo así:
en este formulario queremos validar el nombre del studiante y el correo... entonces en los eventos validating agregamos el siguiente código...
Private Sub txtStudentName_Validating(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles txtStudentName.Validating
If txtStudentName.Text = "" Then
ErrorProvider1.SetError(txtStudentName, "Ingrese el nombre del studiante")
Else
ErrorProvider1.SetError(txtStudentName, "")
End If
End Sub
Private Sub txtStudentMail_Validating(ByVal sender As Object, ByVal e As System.ComponentModel.CancelEventArgs) Handles txtStudentMail.Validating
If txtStudentMail.Text = "" Then
ErrorProvider1.SetError(txtStudentMail, "Ingrese el correo del studiante")
Else
ErrorProvider1.SetError(txtStudentMail, "")
End If
End Sub
pero no tiene sentido estar agregando este codigo a cada objeto, cierto, bueno, para eso cambiaremos el codigo a lo siguiente:
Usando el errorproviderextended, se puede mejorar mucho el código que estabamos escribiendo antes
veamos usando el xtended
Dim _ErrorProvider As New ErrorProviderExtended
Private Sub TestForm_Load(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles MyBase.Load
'agregamos los controles
_ErrorProvider.Controls.Add(txtStudentName, "Nombre Completo")
_ErrorProvider.Controls.Add(txtStudentMail, "Correo")
' el mensaje general....
_ErrorProvider.SummaryMessage = "Los siguientes campos no pueden quedar vacíos"
End Sub
Private Sub cmdSubmit_Click(ByVal sender As System.Object, _
ByVal e As System.EventArgs) Handles cmdSubmit.Click
If _ErrorProvider.CheckAndShowSummaryErrorMessage = True Then
' toda la validación esta OK
MessageBox.Show("Información validada")
End If
End Sub
Listo, ahora a empezar a utilizar las validaciones de los controles, de una forma, quizá más optimizada.....
yo en lo particular, he creado controles para mis proyectos, teniendo la posibilidad de en tiempo diseño especificar las validaciones de cada objeto del form, llegando hasta utilizar validaciones que sean FUNCIONES en la base de datos... por ejemplo un número de NIT/DUI Valido.... jejej tekun rocks
pd: la imagen no tiene nada que ver con el código, porque los msj de las validaciones en la img, aparecen en un textbox en la parte inferior,.... lo siento pero no tengo mucha dedicación para los tutos