PDA

View Full Version : صدا کردن فرمی از پروژة دیگر (فوری)



ساران سافت
دوشنبه 21 دی 1383, 01:09 صبح
با سلام
فرض کنید درون سلوشن دو پروژه وی بی دات نت داریم با نام های p1 و p2
که هر کدامشان چند فرم دارند :wink:
حالا اگر بخواهیم یکی از فرم های پروژه p2 را در زمان اجرا در پروژه P1 نمایش دهیم چکار باید بکنیم؟ :oops:
ببخشید یکم فوریه :sorry:

arctica82
شنبه 15 اسفند 1383, 23:54 عصر
با عرض سلام لطفا کد زیر را امتحان نمایید: و در صورت موفقیت به من اطلاع دهید:

Dim appName As String = Application.ProductName & "."
Dim mForm As String = "Form3"
Dim f As Form = DirectCast(Type.GetType(appName & mForm).InvokeMember(mForm, Reflection.BindingFlags.CreateInstance, Nothing, Nothing, Nothing), Form)
f.Show()

HO457
یک شنبه 16 اسفند 1383, 00:26 صبح
من این کد رو امتحان کردم. ولی وقتی نام فرم رو عوض میکنم مثلاً میذارم Form1 فرمی رو که با همین نام توی خود پروژه هستش رو نشون میده اگر هم همچین فرمی وجود نداشته باشه error میده :گیج:

Peyman_Ranjbar
یک شنبه 16 اسفند 1383, 17:00 عصر
این کد رو بذار تو پروزه دومی که می خواهی فرم از اون اجرا بشه.


Public Shared Sub ShowForm()
Dim Box As New Form1
Box.ShowDialog()

End Sub


این هم کدی که باعث میشه فرم پروژه دوم نشون داده بشه




Dim newForm as new project2namespace.myformname
newForm.ShowForm()



امیدوارم بهت جواب بده

HO457
یک شنبه 16 اسفند 1383, 18:47 عصر
میتونی از این روش هم استفاده کنی:
فرم های پروژت رو توی یه فایل DLL قرار بده، بعد تو هر پروژه ای که بخوای میتونی یه refrence به اون فایل DLL بدی و از فرم هاش استفاده کنی. راحت هم هستش. :wink:

Delphi Skyline
یک شنبه 16 اسفند 1383, 20:30 عصر
با سلام.
ببخشید که اینو اینجا می زارم. برای دلفی چه طوره؟
کمک کنید . فوری .
بای........... :گیج:

M.GhanaatPisheh
یک شنبه 16 اسفند 1383, 23:47 عصر
یکی از پروژه ها باید به صورت Class Library کامپایل بشه و به عنوان Reference به Project دیگه اضاف بشه.

روی یه پروژه Right Click کنید و Output Type را روی Class Library قرار بدید تا بصورت DLL ساخته بشه.

روی Reference پروژه دوم Right Click کنید و و DLL مر بوط به پروژه اول رو به پروژه اضاف کنید.

حالا از Namespace پروژه اول استفاده کنید.

Be happy