La mia applicazione è sviluppata utilizzando WinForms. È possibile ospitare il WPF DataGrid
, Button
, ListBox
, ComboBox
ecc. Nei Controlli utente di WinForms?Hosting di controlli WPF in Winform
risposta
Sì, è possibile utilizzare il controllo ElementHost
in Winforms e ospitare il contenuto WPF al suo interno.
Per aggiungere a questo, può essere terribilmente lento .. Ho dovuto aggiungere alcuni componenti WPF su un Legacy Programma WinForms .. Quello che ho fatto è stato caricare ElementHost in modo asincrono che aiuta le prestazioni. –
Non mischiare WinForm e WPF se non assolutamente necessario. Tuttavia, Microsoft ha fornito il modo di utilizzare il controllo WPF in WinForm e viceversa, ma non sempre dà un buon risultato. WF e WPF rendono i controlli in modi diversi e potresti dover affrontare diversi problemi, tra cui prestazioni e sfarfallio dell'interfaccia utente a seconda del modo in cui sono stati utilizzati.
Se si desidera utilizzare il controllo WPF in WF, utilizzare il controllo ElementHost.
ElementHost.Child = wpfControl;
Che cosa hai provato? È molto più semplice per la comunità fornire aiuto se fai un tentativo, poi vieni con domande più mirate su un problema che stai riscontrando. Sì o no le domande non sono molto costruttive (vedi le prime due sezioni delle FAQ http://stackoverflow.com/faq) Ad esempio, non so davvero nulla sui controlli WinForms o WPF, ma una rapida ricerca su Google ha dato io un sacco di link che sembrano abbastanza rilevanti per rispondere a questa domanda. Ecco il primo della lista: http://msdn.microsoft.com/en-us/library/ms742215.aspx – MattDavis