PDA

View Full Version : ایجاد ارتباط بین WFP و Windows Form Applications



AlgorithmX
جمعه 17 تیر 1390, 00:24 صبح
سلام!
آیا میشه داخل یک پروژه Windows Form Applications یک پروژه WPF اضافه کرد و از داخل WPF یک فرم رو از داخل پروژه Windows Form Applications لود کرد؟

مهدی فرزاد
جمعه 17 تیر 1390, 12:39 عصر
سلام
بله میشه
شما باید کارهای زیر رو انجام بدید

اول اینکه تنظیمی رو که در شکل میبینید انحام بدید
72092

دوم اینکه در پروژه WPF در رفرنس System.Windows.Forms و همچنین پروژه WinApp رو اضافه کنید مثل شکل زیر
72093

حالا توی جایی که میخوای Form رو از WinApp لود کنید اول بنویسید
اگر این کار رو نکنید از متدها و خواص WinApp Form خبری نیست
using System.Windows.Forms;

بعد خیلی راحت مثل این کد میتونید به نتجه برسید
WindowsFormsApplication1.Form1 F = new WindowsFormsApplication1.Form1();
F.Show();

یک مثال هم ضمیمه کردم

البته یک نکته شما میتونید به پروژه WPF خودتون یک فرم Winapp اضافه کنید و بدون دردسر انو خیلی راحت Show کنید

و در آخر دوستانه خواش میکنم اگز میخواید WPF کار کنید فقط WPF کارکنید ، امکانات و توانایی های WPF بقدری زیاد و قوی تر از WInapp هست که دیگه به اون نیازی نیست نمیدونم چرا خیلی از کار برها بین این دو تکنولوژِی خودشون رو پاس میدن

خواهشا WPF رو اصولی کار کنید
تشکر

AlgorithmX
جمعه 17 تیر 1390, 18:33 عصر
و در آخر دوستانه خواش میکنم اگز میخواید WPF کار کنید فقط WPF کارکنید ، امکانات و توانایی های WPF بقدری زیاد و قوی تر از WInapp هست که دیگه به اون نیازی نیست نمیدونم چرا خیلی از کار برها بین این دو تکنولوژِی خودشون رو پاس میدندرسته جناب ولی خیلی از برنامه هایی که من در دوران نا آشنایی با WPF نوشتم به صورت WinApp هستن که میشه به راحتی با تزریق چند فرم WPF به اون پروژه ها اون برنامه رو منقلب کرد!


آیا نمیشه که اون ها به صورت کامل در یک پروژه قرار داد؟ چون در این حالتی که شما فرمودید خروجی پروژه ها به صورت 2 فایل exe مجزاست، که می بایست برای اجرای صحیح در کنار هم باشند!
آیا میشه اونها رو در یک فایل exe قرار داد؟

مهدی فرزاد
جمعه 17 تیر 1390, 21:31 عصر
سلام
شما می تونید خروجی برنامه Winapp رو در حالت Class library قرار بدید که نتیجه اون یک فایل dll میشه

mehdik76
جمعه 17 تیر 1390, 21:52 عصر
جهت استفاده از کنترلهای WPF در WinForms به این شکل عمل می کنیم.

1 - یک پروژه Winform ایجاد می کنیم.
2 - در منوی Project -> Add New Item کلیک میکنیم.
3 - در قسمت Installed Template روی گزینه WPF کلیک می کنیم.
4 - در سمت چپ User Control (WPF) را انتخاب کرده و دکمه Add رو می زنیم.
5 - یک بار پروژه رو Build می کنیم.
6 - بر روی WinForm مورد نظر رفته و از ToolBox و از تب WPF Interoperability کنترل Element Host رو کشیده و روی WinForm رها می کنیم.
7 - در Property مربوط به ElementHost در قسمت Misc مقدار Child را روی UserControl که قبلا اضافه کرده بودید تنظیم کنیم.
8 - حال هر کنترل WPF که در UserControl اضافه کنید در Winform شما دیده می شود.

ali190
جمعه 17 تیر 1390, 22:02 عصر
با wpf میشه برای فرم ، تم درست کرد؟

مهدی فرزاد
جمعه 17 تیر 1390, 23:42 عصر
جهت استفاده از کنترلهای WPF در WinForms به این شکل عمل می کنیم.

1 - یک پروژه Winform ایجاد می کنیم.
2 - در منوی Project -> Add New Item کلیک میکنیم.
3 - در قسمت Installed Template روی گزینه WPF کلیک می کنیم.
4 - در سمت چپ User Control (WPF) را انتخاب کرده و دکمه Add رو می زنیم.
5 - یک بار پروژه رو Build می کنیم.
6 - بر روی WinForm مورد نظر رفته و از ToolBox و از تب WPF Interoperability کنترل Element Host رو کشیده و روی WinForm رها می کنیم.
7 - در Property مربوط به ElementHost در قسمت Misc مقدار Child را روی UserControl که قبلا اضافه کرده بودید تنظیم کنیم.
8 - حال هر کنترل WPF که در UserControl اضافه کنید در Winform شما دیده می شود.

لطفا قبل از دادن پاسخ دقت کنید سئوال خواسته شده در چه مورد هست!!
این چیزی که شما نوشتید ربطی به سئوال پرسیده شده نداشت

مهدی فرزاد
جمعه 17 تیر 1390, 23:44 عصر
با wpf میشه برای فرم ، تم درست کرد؟

سلام دوست قدیمی

با WPF فقط برای پنجره های خود WPF میشه Style درست کرد نه برای Winapp