Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - [vb.net] eccezione controlli di un Form da un diverso Thread
Forum - C# / VB.NET - [vb.net] eccezione controlli di un Form da un diverso Thread

Avatar
nala84 (Normal User)
Newbie


Messaggi: 13
Iscritto: 18/03/2008

Segnala al moderatore
Postato alle 11:18
Lunedì, 29/03/2010
Questo topic è stato chiuso dal moderatore

Ciao a tutti!!

Facendo l'accesso ad una textBox da un Thread mi genera la seguente eccezione:
Operazione cross-thread non valida: è stato eseguito l'accesso al controllo 'Text1' da un thread diverso da quello da cui è stata eseguita la creazione.

Cercando in rete ho visto che quando ci troviamo in una situazione dove è necessario modificare un controllo creato su un Thread diverso rispetto a quello da cui tentiamo la modifica, dobbiamo appoggiarci ai Delegati, tale Delegato ci permette di poter eseguire una Sub o una Function (richiamata tramite AddressOf) direttamente da un Thread voluto, attraverso l'utilizzo del metodo Invoke (dell'oggetto che si trova nel Thread sul quale vogliamo eseguire il codice).

Però non riesco a capire come dovrei comportarmi nel mio caso... Il mio problema è che dovrei concatenare + stringhe utilizzando il contenuto della textbox, cioè:
Codice sorgente - presumibilmente Plain Text

  1. Text1.Text = "[Ricezione dati]" & dati & vbLf & vbLf & Text1.Text
  2. Text2.Text = Text2.Text & dati


Dove: dati è di tipo String

Come posso fare??
illuminatemi... :_doubt:

PM
Avatar
Thejuster (Member)
Guru^2


Messaggi: 1817
Iscritto: 04/05/2008

Segnala al moderatore
Postato alle 15:04
Lunedì, 29/03/2010
Non puoi gestire oggetti su altri Thread Paralleli,

Ma puoi recuperare informazioni da variabili che vengono posizione nello stack di memoria e non nell'heap.

quindi al thread che sfrutta l'oggetto textbox, il contenuto lo memorizzi in una variabile
e dopo la recuperi dal thread principale.



PM
Avatar
nala84 (Normal User)
Newbie


Messaggi: 13
Iscritto: 18/03/2008

Segnala al moderatore
Postato alle 15:47
Lunedì, 29/03/2010
Grazie per la risp!!
Ho già risolto in questo modo: http://forum.masterdrive.it/visual-basic-net-18/vb-net-ecc ...

PM