vaheeed
یک شنبه 17 دی 1391, 14:46 عصر
انتقال اطلاعات بین 2 فرم بدون اینکه نمونه جدیدی ازش نشون بدیم معمولا مشکل اینه که باید یک نمونه جدید ساخت و نمایشش داد تا تغییرات اعمال بشه ولی اینجوری در همون لحظه اطلاعات جابجا میشه !
2 تا فرم داریم : فرم 1 و فرم 2
داخل فرم 1 ، نمونه ای از فرم 2 میسازیم و همینطور در فرم 2 نمونه ای از فرم 1 رو میسازیم .
Form2 frm2=new Form2();
public Form1 frm1;
در فرم 1 به نمونه ای که از فرم 2 ساختیم اشاره میکنیم و بعد به نمونه ای که از فرم 1 ساختیم یعنی :
frm2.frm1=this; و این نمونه رو برابر this قرار میدیم اینجوری میگیم فرم 2 که نمایش داد یه نمونه از فرم 1 داخلش داریم که برابر همین فرمی هست که ازش فراخونی شده .
حالا فرم 2 رو نمایش میدیم و با نمونه frm1 به متغییر های عمومی فرم 1 دسترسی داریم .
فقط توجه داشته باشین که نمونه ای که از فرم 1 ساخته شد عمومی بود و هر متغییری که بخواید در فرم 1 تغیر پیدا کنه باید عمومی باشه .
برای عمومی کردن یک لیبل و یا ... باید به فایل کد طراحی برید و private اون متغیر را به public تغییر بدید البته میتونید در قسمت properties متغیر هم مراجعه و خاصیت modifiers رو برابر public قرار بدید .
میدونم اولش گیج میشید ولی نمونه کد رو ببینید حل میشه .
اگه اساتید مشکلی میبینند اصلاح بفرمایند با تشکر.
با تشکر از دوست خوبم azgn32
اینم یه نمونه برنامه :
2 تا فرم داریم : فرم 1 و فرم 2
داخل فرم 1 ، نمونه ای از فرم 2 میسازیم و همینطور در فرم 2 نمونه ای از فرم 1 رو میسازیم .
Form2 frm2=new Form2();
public Form1 frm1;
در فرم 1 به نمونه ای که از فرم 2 ساختیم اشاره میکنیم و بعد به نمونه ای که از فرم 1 ساختیم یعنی :
frm2.frm1=this; و این نمونه رو برابر this قرار میدیم اینجوری میگیم فرم 2 که نمایش داد یه نمونه از فرم 1 داخلش داریم که برابر همین فرمی هست که ازش فراخونی شده .
حالا فرم 2 رو نمایش میدیم و با نمونه frm1 به متغییر های عمومی فرم 1 دسترسی داریم .
فقط توجه داشته باشین که نمونه ای که از فرم 1 ساخته شد عمومی بود و هر متغییری که بخواید در فرم 1 تغیر پیدا کنه باید عمومی باشه .
برای عمومی کردن یک لیبل و یا ... باید به فایل کد طراحی برید و private اون متغیر را به public تغییر بدید البته میتونید در قسمت properties متغیر هم مراجعه و خاصیت modifiers رو برابر public قرار بدید .
میدونم اولش گیج میشید ولی نمونه کد رو ببینید حل میشه .
اگه اساتید مشکلی میبینند اصلاح بفرمایند با تشکر.
با تشکر از دوست خوبم azgn32
اینم یه نمونه برنامه :