Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
Problema Tasto ENTER
martedì 11 febbraio 2014 - 12.38
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
Elenco Tags
C#
|
.NET 4.0
|
Windows 7
|
Visual Studio Express
|
SQL Server Express
Foga92
Profilo
| Newbie
10
messaggi | Data Invio:
mar 11 feb 2014 - 12:38
Ciao a tutti,
Il mio problema è il seguente :
Ho 2 text box la prima inserisco un numero e tramite l'evento keyup, premendo ENTER (INVIO), passa alla seconda passando una serie di controlli sulla formattazione.
Ora il mio problema sorge quando, dopo aver trovato un errore nella formattazione che quindi viene evidenziato tramite il popup di una message box se si preme INVIO per confermare l'errore della text box questa continua a ritornare fino a quando: o si preme ok col mouse oppure si preme ESC
Qualcuno sa come aiutarmi?
Grazie
ridaria
Profilo
| Expert
905
messaggi | Data Invio:
mer 12 feb 2014 - 07:42
>Ciao a tutti,
>Il mio problema è il seguente :
>
>Ho 2 text box la prima inserisco un numero e tramite l'evento
>keyup, premendo ENTER (INVIO), passa alla seconda passando una
>serie di controlli sulla formattazione.
>Ora il mio problema sorge quando, dopo aver trovato un errore
>nella formattazione che quindi viene evidenziato tramite il popup
>di una message box se si preme INVIO per confermare l'errore
>della text box questa continua a ritornare fino a quando: o si
>preme ok col mouse oppure si preme ESC
>
>Qualcuno sa come aiutarmi?
il tasto invio ti da problemi perché poi lo ripremi per la msg box e lui ripete il controllo sulla formattazione della text box. GIUSTO?
allora fai così, inserisci il controllo sulla formattazione della text box 1, sul focus della textbox2, ed in particolare per evitare loop al termine del controllo sulla formattazione, se c'è statao un errore, dai il messaggio con msgBox, e poi restituisci il focus alla tex 1.
Prova e fammi sapere.
CIAO
>Grazie
Riccardo D'Aria
Foga92
Profilo
| Newbie
10
messaggi | Data Invio:
mer 12 feb 2014 - 13:16
Ciao grazie per la risposta.
Ho provato in ogni modo anche a fargli fare il focus e il select su una label ma niente.
Mi spiego meglio: Se gli faccio fare la verifica e poi mi sposto su un'altra casella va tutto bene. ma se io inserisco il comando select per fare in modo che mi riselezioni ancora quella, li sorge il dramma....
Ho provato a selezionarla dopo la chiamata del metodo, anche dopo la message box ma niente da fare continua a ripresentarsi la message box all'infinito . In sostanza funziona tutto bene se poi non devo riselezionare la TB in questione.
Grazie
P.S. Per verificare la valità del contenuto nella Text Box uso il Tryparse.Int32(<nome TB>) assegnando il valore ad una variabile bool conversione valida, successivamente se questa è vera prosegue l'esecuzione normale del programma altrimenti scatta la cancellazione del contenuto e il riselezionamento della TB. Tutto questo all'interno di un blocco Try che così facendo riesce ad intercettare l'eccezzione System.FormatException e anche in questo caso le azione che copie sono il cancellamento del contenuto e la riselezione con i MessageBox
Tutto quello sopra descritto è all'interno di un metodo void che viene richiamato con l'evento Enter sulla 2 TextBox
Grazie
ridaria
Profilo
| Expert
905
messaggi | Data Invio:
mer 12 feb 2014 - 16:38
avevo suggerito di fare il controllo nell'evento focus della 2° text box.
Hai fatto così?
Se fai così, quando rida il focus alla 1° text box non può ripartirti il controllo, dal momento che parte solo al focus della 2° text box
Fammi sapere
Riccardo D'Aria
Foga92
Profilo
| Newbie
10
messaggi | Data Invio:
mer 12 feb 2014 - 20:09
Evento focus? Non riesco a trovarlo. Io utilizzo Visual Studio 2012 e l'unico evento che ho trovato utilizzabile è stato "Enter".
Riusciresti a postarmi un esempio?
Grazie
ridaria
Profilo
| Expert
905
messaggi | Data Invio:
gio 13 feb 2014 - 04:56
>Evento focus? Non riesco a trovarlo. Io utilizzo Visual Studio
>2012 e l'unico evento che ho trovato utilizzabile è stato "Enter".
>
>Riusciresti a postarmi un esempio?
Private Sub TextBox2_GotFocus(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox2.GotFocus
If TextBox1.Text <> "4321" Then
TextBox1.Focus()
MsgBox("dati errati")
End If
End Sub
Eccolo fammi sapere
>Grazie
Prego
Riccardo D'Aria
Foga92
Profilo
| Newbie
10
messaggi | Data Invio:
gio 13 feb 2014 - 18:32
Ma questo codice è in c#? Visual studio non mi accetta il sub... sembra codice VB o sbaglio?
ridaria
Profilo
| Expert
905
messaggi | Data Invio:
gio 13 feb 2014 - 18:48
si è vb, puoi semplicemente tradurlo in c dal seguente sito:
http://www.carlosag.net/tools/codetranslator/
Ciao fammi sapere
Riccardo D'Aria
Foga92
Profilo
| Newbie
10
messaggi | Data Invio:
gio 13 feb 2014 - 19:38
Ho provato ma non succede nulla.
Ho impostato l'evento KeyUp con ENTER sulla prima text box che imposta semplicemente il focus e la selezione sulla seconda ma l'evento non parte, non viene nemmeno preso in considerazione.
ridaria
Profilo
| Expert
905
messaggi | Data Invio:
ven 14 feb 2014 - 06:41
il key up e enter non c'entrano nulla.
Se vuoi controllare la formattazione di txt1 quando la lasci ed in particolare quando passi alla text 2, enter e keyUp non c'entrano nulla.
Usa il codice che ti ho passato,chiaramente devi metterlo nell'evento gotFocus della text 2.
Fammi sapere
Riccardo D'Aria
Foga92
Profilo
| Newbie
10
messaggi | Data Invio:
sab 15 feb 2014 - 09:16
Ho risolto:
Il problema era l'evento KeyUp.....
Praticamente appena premevo il tasto enter confermava la text box e nel momento in cui lo rilasciavo ripartiva l'evento di verifica della validità ma trovando la casella vuota entrava in un loop. mi è bastato modificare l'evento da keyup a keydown
Grazie lostesso
Torna su
Stanze Forum
Elenco Threads
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 !