Aprire WPF Window da WinForms

Se vi capita, come è successo a me, di fare una Dll per un vostro programma ma volete inserire al posto del classico WinForm, una Window di WPF, potete facilmente farlo così:

Al posto della classica DLL, create una “Libreia di Controlli Utente WPF”.

al suo interno inserite una “Finestra WPF (Window)”.

dopo aver compilato (nel mio pc registro la dll in GAC. andiamo nel progetto WinForm e dopo aver importato nei riferimenti la dll WPF  e la DLL PresentationFramework, importando lo spazio dei nomi “System.Windows.Forms.Integration” nella Form dove si trova il Button che aprirà la Window WPF..

Andiamo nell’evento Click del Button che dovrà richiamare la nostra Window e scriviamo questo:

 

Dim wpfwindow As New WPFWindow.Window1
ElementHost.EnableModelessKeyboardInterop(wpfwindow )
wpfwindow .Show()

Provate e vedrete la Window aprirsi nella vostra applicazione WinForm..

 

Ottimo modo per entrare pin piano in questo fantastico mondo WPF.

Un grazie a Alessandro Del Sole per la dritta sul “ElementHost”.