[VB.NET] Handler in thread separato

martedì 29 marzo 2011 - 15.30
Tag Elenco Tags  VB.NET  |  .NET 3.5  |  .NET 4.0  |  Windows XP  |  Visual Studio 2010  |  Visual Studio Express

Qwertj Profilo | Newbie

Salve a tutti,
Utilizzo un controllo NotifyIcon che faccio comparire da un thread separato, ma sembra che a causa di ciò non mi vadano gli handler degli eventi.
Il codice è semplice. Avvio un thread separato che a un certo punto chiama ShowBalloonTip, e in effetti il Balloon viene mostrato.
Ma se io ci clicco sopra (sul balloon), non mi parte l'handler dell'evento BalloonTipClicked (che ho creato)

Ho fatto una prova, se faccio mostrare il balloon dal thread principale mi funziona l'handler.

Come risolvo?

Ho provato a:
1- Aggiungere l'handler dinamicamente dal thread separato, subito prima di visualizzare il Balloon
2- Usare il metodo Invoke col seguente codice:
Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

EDIT:
Ho trovato il problema: devo mostrare l'icona dal ThreadGUI (ApplicationBarIcon.Visible = True)

[CODE] Private Delegate Sub ShowNotifyIconDelegate() Private Sub ShowSisTrayIcon() If Me.InvokeRequired Then Me.Invoke(New ShowNotifyIconDelegate(AddressOf ShowSisTrayIcon)) Else ApplicationBarIcon.Visible = True End If End Sub [/CODE]
Se la conoscenza crea problemi, non è con l'ignoranza che si risolvono [Isaac Asimov]
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