Kezdőlap > Kategorizálatlan > A Windows Forms és a WPF

A Windows Forms és a WPF

2010. január 2. szombat Hozzászólás Go to comments

Bár a WPF rengeteg kontrolt bocsájt a rendelkezésünkre, mégis vannak olyanok, amelyek Windows Forms világban megtalálhatók míg WPF-ben nem. Nem is beszélve a saját készítésű vagy harmadik cég által szállított WinFormsos vagy régebbi kontrolokról.  Ahhoz, hogy ezeket a ma már klasszikus értelembe vett Windows Forms vagy korábbi COM kontrolokat használjuk, szükségünk lesz a WindowsFormsHost kontrolra. Ez a kontrol lehetőséget biztosít arra, hogy egy WPFes alkalmazásba integráljunk egy-vagy több Windows Fromsos kontrolt. A WindowsFormsHost csak egy kontrolt tud hosztolni egyszerre, ha többet szeretnénk, akkor készítsünk ennek megfelelően egy user controlt, amibe több kontrol hosztolunk és az adjuk át WindowsFormsHost számára.

Ahhoz, hogy ezt a kontrolt használatba vegyük, két referenciát hozzá kell adnunk a projektünkhöz. Szükségünk lesz a System.Windows.Forms.Integration névtérre (amely a WindowsFormsIntegration assemblybe található) valamint magára a System.Windows.Forms névtérre is. Használatba vételkor töltsük be ezeket a névtereket XAML-be, például az alábbi módon.

xmlns:wfi="clr-namespace:System.Windows.Forms.Integration;assembly=WindowsFormsIntegration"

Ha WindowsFormsos kontrolt szeretnénk használni, akkor a System.Windows.Forms névteret is be kell húznunk.

xmlns:wf="clr-namespace:System.Windows.Forms;assembly=System.Windows.Forms"

Ezt követően már csak hozzá kell adnunk a WindowsFormsHost kontrolt a WPF ablakunkban, és el kell helyeznünk benne a megfelelő WinFormsos kontrolt. (Jelen esetben egy gombot)

<wfi:WindowsFormsHost>
  <wf:Button Text="Ez egy Winforms-os gomb"/>
</wfi:WindowsFormsHost>

Látható, hogy semmi nehézséget nem okoz WPF-es alkalmazásokba régebbi kontrolokat használni. Így, ha WPF-es fejlesztésre adjuk a fejünket, akkor se veszíthetjük el a már meglévő vagy megvásárolt kontroljainkat, hisz ugyanúgy felhasználhatjuk őket itt is. 

További információk:
http://msdn.microsoft.com/en-us/library/system.windows.forms.integration.windowsformshost.aspx
http://nayyeri.net/host-windows-forms-controls-in-wpf

Reklámok
Kategóriák:Kategorizálatlan
  1. Még nincs hozzászólás.
  1. No trackbacks yet.

Vélemény, hozzászólás?

Adatok megadása vagy bejelentkezés valamelyik ikonnal:

WordPress.com Logo

Hozzászólhat a WordPress.com felhasználói fiók használatával. Kilépés / Módosítás )

Twitter kép

Hozzászólhat a Twitter felhasználói fiók használatával. Kilépés / Módosítás )

Facebook kép

Hozzászólhat a Facebook felhasználói fiók használatával. Kilépés / Módosítás )

Google+ kép

Hozzászólhat a Google+ felhasználói fiók használatával. Kilépés / Módosítás )

Kapcsolódás: %s

%d blogger ezt kedveli: