Ciao a tutti,
Ho bisogno di una spiegazione Umana di questa parte di codice....
La Sub UpDateText viene chiamata dal metodo di ricezione dati su porta seriale.codice:Delegate Sub SetTextCallback(ByVal [text] As String) Private Sub UpDateText(ByVal [text] As String) If Me.rtbTestoRicevuto.InvokeRequired Then Dim Cmp As New SetTextCallback(AddressOf UpDateText) Me.Invoke(Cmp, New Object() {(text)}) Else Me.rtbTestoRicevuto.Text &= [text] End If End Sub
InvokeRequired non capisco cosa significhi...
Da MSDN :
"Ottiene un valore che indica se il chiamante deve utilizzare un metodo Invoke per eseguire chiamate di metodo al controllo, in quanto si trova in un thread diverso da quello in cui è stato creato il controllo."
Proprio non lo capisco.
subito dentro if crea il delegato e ok....
con me.invoke dovrebbe essere il modo per richiamare il delegato (ma ha che scopo, non potevo settare subito il testo della mia rtbTestoRicevuto?), ma da doc msdn diventa incompresibile
"Consente di eseguire il delegato specificato nel thread proprietario dell'handle di finestra sottostante del controllo."
Ciao