PDA

View Full Version : سوال: رفرش کردن فرم



shytonak
چهارشنبه 09 آذر 1390, 14:20 عصر
دوستان من توی برنامه ام 2 تا فرم دارم که توی فرم 1 ، دیتاگریدویو دارم که به اکسس وصل میشه و اطلاعات درون اکسس رو نمایش می ده.بوسیله فرم 2 ، من توی اکسس تغییرات ایجاد می کنم ، یه ردیف رو حذف یا ویرایش می کنم.
حالا می خوام وقتی دکمه ای که در فرم دوم وجود داره و باعث اعمال تغییر در اکسس میشه رو می زنم همزمان در دیتاگریدویو فرم 1 هم تغییرات اعمال بشه و نیاز نباشه که فرم اول رو بست و از نوع باز کرد.

saeedhushmand
چهارشنبه 09 آذر 1390, 14:41 عصر
فکر کنم باید data grid view فرم1 از properties<modifiers براش خاصیت public بزاری بعد با این کد اون از فرم ذیگه صدا بزنی
با کد زیر می تونی فرم1 از فرم 2 صدا بزنی و به اشیا درون ان که خاصین public دارند دسترسی داشته باشی


form1 frm = new form1();
frm.کاری که می خوای انجام بدی

ya30ien2
چهارشنبه 09 آذر 1390, 18:11 عصر
شما میتونی کدهایی که برای نمایش اطلاعات در دیتا گرید هم نوشتی رو صدا بزنی
کدهایی که هنگام اجرای فرم اجرا میشن

shytonak
چهارشنبه 09 آذر 1390, 19:16 عصر
میشه راهنمایی کنید که چطور این کارو انجام بدم(کد های دورن یه فرم دیگه رو صدا بزنم)این کد ها توی قسمت private void Form5_Load(object sender, EventArgs e) هستند.

Mahmoud Zaad
چهارشنبه 09 آذر 1390, 20:32 عصر
سلام
دوست عزیز، شما اون کدهایی که مربوط به این کار هست رو به صورت یک متد(Public) در فرم اول بنویسید، بعد توی فرم دوم (که تغییراتی رو ایجاد می کنید) بعد از هر تغییر، مثلاً ثبت رکورد جدید، از اون متد استفاده کنید به این صورت:
(Application.OpenForms["Form1"] as Form1).MetodeShoma();

shytonak
چهارشنبه 09 آذر 1390, 21:15 عصر
دوست من میشه بیشتر راهنمایی کنید من می خوام از فرم 1 به public void Form5_Load(object sender, EventArgs e) اشاره کنم و از اول تمام کد ها رو اجرا کنم.
با تشکر

Mahmoud Zaad
پنج شنبه 10 آذر 1390, 09:21 صبح
نمونه زیر رو نگاه کنید:

shytonak
پنج شنبه 10 آذر 1390, 23:53 عصر
ممنون حل شد