Annullare l'evento Leave su una tab.

lunedì 18 luglio 2011 - 13.32
Tag Elenco Tags  VB.NET  |  .NET 2.0  |  Visual Studio 2005

monti Profilo | Newbie

Salve, stò realizzando un programmino per la registrazione di contatti telefonici e ho utilizzato un tabcontrol con tabpage1 per la visualizzazione dell'elenco di tutti i contatti ed un tabpage2 per la visualizzazione del dettaglio del contatto selezionato nella precedente; ora il problema è che ho impostato, o vorrei impostare, alcuni campi obbligatori e in fase di controllo un messaggio per l'utente che inviti alla compilazione in caso di string.isnullroempty e il focus sulla casella interessata; il controllo delle caselle obligatorie l'ho associato all'evento leave della tabpage2; in fase di esecuzione all'evento leave uscendo dalla tabpage2 mi compare correttamante il messaggio che ho impostato ma invece di annullare l'evento leave e posizionare il focus sulla casella interessata esce comunque dal tab.
Come posso annullare l'evento tab_leave una volta avviato?
Grazie Andrea.

Vinsent Profilo | Senior Member

Prova con qualcosa del genere:
Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra
Il codice si attiva quando la textbox perde il focus, se la condizione è rispettata impedisce l' uscita dalla textbox.
NB: è un' appunto che avevo preso leggendo una discussione e che non mai utilizzato realmente...comunque, in una form con una textbox impedisce anche la chiusura del form stesso...
ciao

Vincenzo

monti Profilo | Newbie

Grazie Vincent per la dritta, ho utilizzato il validating sulla tabpage, previa sua abilitazione ponendo causesvalidation su true della stessa tabpage, infatti uscendo dalla tab viene annullato l'evento leave se i campi non sono compilati; mi rimane da risolvere l'evento indexchange della tabcontrol, infatti cliccando invece su un'altra tabpag della stessa tabcontrol viene comunque passato il focus alla nuova tabpage ma rimane il messaggio di inserimento dei dati obbligatori ed il programma va in loop non riuscendo più a compilare quei campi perchè non più attivi, ma la strada sembra quella giusta.
Grazie ancora, saluti Andrea.
Andrea.
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5