Simulare l’evento Validating

A volte può capitare (almeno a me) di utilizzare l’evento Validanting per delle decodifiche (xes IDCliente – RagioneSociale) appare chiaro che in situazioni come questa sarebbe utile avere una funzione PerformValidating, che invochi l’elaborazione contenuta nell’evento e ci dica se la validazione è riuscita o meno, da utilizzare quando modifichiamo il record per evitare la ripetizione del codice di decodifica o tortusi escamotage per richiamare la funzione a cui è collegato l’evento Validating.

Un modo per ottenere tale risultato può essere quello di ricorrere alla Reflection:

 

Function PerformValidating(ByVal control As System.Windows.Forms.Control) As Boolean

      control.Focus()

 

      Dim method As System.Reflection.MethodInfo

      method = control.GetType.GetMethod(“OnValidating”, _
                        Reflection.BindingFlags.Instance

Or Reflection.BindingFlags.NonPublic)

 

      Dim e As New System.ComponentModel.CancelEventArgs

      method.Invoke(control,

New Object() {e})

 

      Return Not e.Cancel

 

End Function