Ver Mensaje Individual
  #7 (permalink)  
Antiguo 07/07/2011, 12:00
Avatar de HaverRamirez
HaverRamirez
 
Fecha de Ingreso: junio-2011
Ubicación: Guatemala
Mensajes: 273
Antigüedad: 13 años, 5 meses
Puntos: 33
Respuesta: Macrosustitucion en Visual Basic 2010

Envias el textbox completo, si te das cuenta yo utilizo un for each definiendo la variable C as Control, un textbox es un Control, entonces C es un control del tipo textbox con todo y sus propiedades, fijate en el procedimiento anterior , y ves cuando hago un Ctype(c,textbox).text estoy accesando al control, y le digo con Ctype que lo interprete como un textbox y si se puede interpretar, puedo acceder a su propiedad Text, en el caso de string.isnullorEmpty verifico si el text del control (textbox) esta vacio si es asi, envio el objeto completo a un procedimiento vinculaerror(c) donde vincula error espera un parametro tipo control y ahi lo valido, mira el proc de validación
Código vb:
Ver original
  1. Public Function VinculaError(ByVal C As Control)
  2.         errprovider = New ErrorProvider
  3.         errprovider.SetError(C, "Campo Requerido")
  4.         errprovider.BlinkRate = 1000
  5.     End Function

Date cuenta de otra cosa primero verifico o trato de ver si es un tipo de control con TypeOf y lo comparo si es un combobox que haga un tipo de verificacion y si es un tipo textbox que verifique la propieda text, ahora con datetimepicker seria asi

Código vb:
Ver original
  1. If TypeOf C Is DatetimePicker Then
  2.                     If IsNothing(CType(C, DatetimePicker).Value) OrElse Not IsDate(CType(C, DatetimePicker).Value) Then
  3.                         VinculaError(C)
  4.                         Return False
  5.                     End If
  6.                 End If