Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - come far comparire finestre in base a certi eventi?
Forum - C# / VB.NET - come far comparire finestre in base a certi eventi?

Avatar
Dice (Normal User)
Expert


Messaggi: 238
Iscritto: 26/11/2011

Segnala al moderatore
Postato alle 21:17
Venerdì, 10/01/2014
Io varrei riuscire a fare questo:
io ho un tot di textBox e voglio che si verifichi questo evento: quando tutte queste textBox non sono vuote (cioè se c'è scritto qualcosa) deve comparire un'altra finestra.

Io sono sia fare l'if (basta che scrivo if(textBox1.text != "") formPippo.show() )

Il fatto è che non so dove metterlo; io di solito uso dei semplici bottoni e niente di più. E non voglio premere nessun pulsante, voglio che compaia non appena si è verificata la condizione.

Dove devo mettere il codice per far si che si verifichi?

PM Quote
Avatar
Poggi Marco (Member)
Guru


Messaggi: 969
Iscritto: 05/01/2010

Segnala al moderatore
Postato alle 22:18
Venerdì, 10/01/2014
Ciao!

Una soluzione potrebbe essere quella di intercettate il cambiamento del testo su ognuna textbox. Quindi richiami una funzione che faccia i dovuti controlli e lanci il secondo form.

PM Quote
Avatar
Dice (Normal User)
Expert


Messaggi: 238
Iscritto: 26/11/2011

Segnala al moderatore
Postato alle 11:06
Sabato, 11/01/2014
e ok, faccio la funzione, ma poi dove la vado ad invocare?
Dove devo mettere la sua invocazione?
Per caso nel codice della form?

PM Quote
Avatar
ampeg (Normal User)
Pro


Messaggi: 124
Iscritto: 21/04/2011

Segnala al moderatore
Postato alle 14:12
Sabato, 11/01/2014
http://msdn.microsoft.com/it-it/library/system.windows.for ...


potresti creare una procedura per il controllo delle textbox dove controlli il valore della proprietà Text.Length di ogni textbox
questa proprietà ti da il numero di caratteri presenti nel testo della textbox

Codice sorgente - presumibilmente VB.NET

  1. Private Sub ControlloTextBox()
  2.  
  3.   If (TextBox1.Text.Length > 0) And (TextBox2.Text.Length > 0) And (TextBox3.Text.Length > 0) Then
  4.  
  5.     Dim frm = New formPippo()
  6.     frm.ShowDialog()
  7.  
  8.   End If
  9.  
  10. End Sub



nell'evento TextChanged di ogni textbox richiami la procedura per il controllo
nota che per comodità ho ragguppato tutti gli handler delle text box sotto un' unica procedura
devi aggiungere l'handler per ogni textbox che devi controllare

Codice sorgente - presumibilmente VB.NET

  1. Private Sub TextBox_TextChanged(sender As Object, e As EventArgs) Handles _
  2.     TextBox1.TextChanged, TextBox2.TextChanged, TextBox3.TextChanged
  3.  
  4.    Call ControlloTextBox()
  5.  
  6.   End Sub


Ultima modifica effettuata da ampeg il 11/01/2014 alle 14:14
PM Quote