2012-11-15 11 views
6

Quando si codifica la logica di convalida per una casella di testo VB .NET, quale gestore di eventi è meglio utilizzare: Convalida o Lasciare?È meglio usare la convalida o lasciare l'evento per convalidare i dati della casella di testo?

Da quello che ho capito, entrambi si verificano allo stesso tempo. Tuttavia, in base a questo articolo: MSDN: Control.Leave Event, l'evento Leave si verifica subito prima dell'evento di convalida. Questo inizialmente mi farebbe pensare che preferirei usare l'evento Leave, come succede prima.

Tuttavia, per la leggibilità del codice, sarebbe opportuno inserire tutto il codice di convalida nell'evento di convalida.

Quindi, qual è l'opzione migliore in termini di efficienza e standard di settore?

+0

Se è possibile salvare i dati senza uscire dalla casella di testo, non verrà chiamato il codice di convalida. –

risposta

7

È necessario sempre utilizzare l'evento Validazione, è stato creato per supportare la convalida. Se non impedire la modifica al focus, almeno per la proprietà CausesValidation. Che si imposta su False, ad esempio, sul pulsante Annulla di una finestra di dialogo. Non serve a convalidare nulla quando l'utente decide di chiudere la finestra di dialogo.

2

L'evento Validating è progettato per la convalida. Se il testo non è valido, imposta e.Cancel = True e lo stato attivo rimane nella casella di testo. Leave è solo una notifica.

Problemi correlati