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:
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]