PDA

View Full Version : سوال: ارتباط بین دو فرم؟؟؟



h.hatami
سه شنبه 13 مهر 1389, 17:11 عصر
میخام توی textbox فرم 2ام, combobox.selesteditem فرم1ام رو چاپ کنم اما نمیدونم چطوری باید از اشیای فرم دیگری در فرم جاریم استفاده کنم؟؟؟؟؟؟؟؟؟
ممنون میشم اگه کسی بگه چیکار کنم؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟

صباح فتحی
سه شنبه 13 مهر 1389, 17:15 عصر
میخام توی textbox فرم 2ام, combobox.selesteditem فرم1ام رو چاپ کنم اما نمیدونم چطوری باید از اشیای فرم دیگری در فرم جاریم استفاده کنم؟؟؟؟؟؟؟؟؟
ممنون میشم اگه کسی بگه چیکار کنم؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟
از پراپرتی استفاده کنید...
اگر غیراصولی میخایید بااستفاده از نام فرم.نام تکست باکس

Javad_raouf
سه شنبه 13 مهر 1389, 18:32 عصر
خاصیت Modifiers شیء combobox رو Public کن
تا بتونی در فرم دو این کد رو بنویسی:

form1.combobox

سروش ربیعی
سه شنبه 13 مهر 1389, 19:06 عصر
سلام

اولین چیزی که شما باید بدونید اینه که هر فرم جاری، در واقع نمونه‌ای از یک کلاس مشتق شده از فرم هست. برای دسترسی به اعضای غیر استاتیک از یک فرم نیاز دارید که به خود نمونۀ ساخته شده دسترسی داشته باشید. برای این کار می‌تونید مثلاً فرم‌ها رو توی کلاس Application مقداردهی کنید و با اسمشون دسترسی داشته باشید.



class application
{
public static Form1 x;
public static Form2 x;
public static Main()
{
application.x = new Form1()
application.y = new Form2()
// running application under application.x
}
}



بعدش توی فرم‌ها به اعضای Public‌ فرم دیگه می‌تونید دسترسی داشته باشید. اگر می‌خواهید کنترلی را که رو فرمی قرار داده‌اید public کنید؛ به هیچ وجه این کار رو دستی انجام ندید! به properties برید و Modifiers رو روی public تنظیم کنید. مثلاً این طوری:



// in the first form class
.
.
.
application.y.textbox1.text='I'm from Form1!'
.
.
.


دقت داشته باشید که باید فرم مورد نظر در حال اجرا باشه. یعنی ساخته شده باشه و بعد از ساخته شدن بسته نشه. اگر لازم دارید فرم رو موقتاً ببندید، close نکنید به جاش از متد hide استفاده کنید که برای فرم دوم مشکلی پیش نیاد.

Mohandes2009
سه شنبه 13 مهر 1389, 22:27 عصر
میخام توی textbox فرم 2ام, combobox.selesteditem فرم1ام رو چاپ کنم اما نمیدونم چطوری باید از اشیای فرم دیگری در فرم جاریم استفاده کنم؟؟؟؟؟؟؟؟؟
ممنون میشم اگه کسی بگه چیکار کنم؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟؟
سوالتون تکراریست یه سرچ میکردید لازم نبود بحث ایجاد کنید!

mmd2009
چهارشنبه 14 مهر 1389, 00:00 صبح
با سلام

بعد از این همه مدت باز هم روش هایی مطرح میشه که اصولی نوشتن یک برنامه رو داغون میکنه.


@ h.hatami (http://www.barnamenevis.org/forum/member.php?u=164158) :

جواب درست رو در پاسخ شماره 2 این تاپیک جستجو کنید.