PDA

View Full Version : انتقال داده بین چند فرم



iman-63
دوشنبه 15 تیر 1388, 19:47 عصر
سلام.
می خوام یه برنامه بنویسم که در فرم1 با زدن دکمه new یه فرم دیگه(فرم2) باز بشه. فرم 2 یک سری اطلاعات(شامل اعداد) بگیره و به فرم 1 منتقل کنه و عدد منتقل شده از فرم 2 رو توی یه کنترل مثل lable یا textbox یا ... نشون بده.

من یه برنامه نوشتم به این صورت که دوتا فرم ساختم و یه کلاس هم add کردم.
اول فرم1 باز میشه، از اونجا فرم 2 رو فراخونی میکنم و اطلاعات رو میدم. ایراد اینجاست که وقتی فرم 2 رو می بندم اطلاعات را مستقیماً توی فرم 1 نشون نمیده. یعنی باید باید فراخونی اطلاعات رو توی مثلاً یه دکمه بزارم و وقتی اون دکمه رو زدم اطلاعات فرم 2 رو می تونم ببینم. در صورتی که من می خوام بمحض زدن دکمه OK در فرم 2، اطلاعات در فرم 1
بدون هیچ کنترل واسطه ای نشون داده بشه.
با شکر

Xcalivorse
دوشنبه 15 تیر 1388, 20:31 عصر
راهاي خيلي زيادي وجود داره. بك راه ساده اش رو برات درست كردم. ضميمه ميكنم. دانلودش كن. انشاالله كه به دردت ميخوره.

vahid.bz
دوشنبه 15 تیر 1388, 20:39 عصر
با زدن دکمه new یه فرم دیگه(فرم2) باز بشه
روی دکمه ی new دو بارکلیک کن و در بلاک رویداد کلیک کد زیر رو بنویس:

Form2 F = new Form2();
F.show();
فرم 2 یک سری اطلاعات(شامل اعداد) بگیره و به فرم 1 منتقل کنه و عدد منتقل شده از فرم 2 رو توی یه کنترل مثل lable یا textbox یا ... نشون بده.

اگه با texboxاعدادرو در فرم 2 گرفتی اول خاصیت modifierاونوpublicکن وکد زیر در رویدادی که می خوای این کار انجام شه بنویس

textBoxForm1.Text = textBoxForm2.Text;

iman-63
چهارشنبه 17 تیر 1388, 18:38 عصر
ممنون
عالی بود. اما این خاصیت modifier کارش چیه؟

vahid.bz
چهارشنبه 17 تیر 1388, 19:11 عصر
modifierمیزان دستیابی است
یک textbox میزان دستیابیش به صورت پیشفرض privateیعنی فقط برای فرم خودش قابل دسترس
ام وقتی publicمیشه برا بقیه فرمها قابل دسترسی است
لینک زیر انواع اون با توضیحاتشو داره
http://msdn.microsoft.com/en-us/library/ms173121.aspx