Ho scritto un semplice programma MSN che invierà e recupererà i messaggi utilizzando WCF. Il modulo principale contiene una casella di testo per digitare il messaggio da inviare. In background l'applicazione esegue il polling del server ogni pochi secondi per i nuovi messaggi. Quando viene ricevuto un nuovo messaggio, viene aperta una nuova finestra per visualizzarla. Questo deve essere fatto sul thread dell'interfaccia utente usando la classe Dispatcher.Come impedire a un nuovo modulo WPF di rubare lo stato attivo?
Il problema è che quando viene visualizzata la nuova finestra, lo stato attivo si sposta dal TextBox, in modo che la digitazione venga interrotta. Questo è molto fastidioso! In MSN Messenger è possibile continuare a digitare il proprio messaggio durante la ricezione. Com'è fatto?
Come soluzione temporanea, rimando il popup con il nuovo messaggio mentre il TextBox è attivo, ma dovrebbe esserci un modo migliore!
C'è un modo per aprire una nuova finestra senza che sia messo a fuoco? –