PDA

View Full Version : مشکل در دوباره به نمایش در امدن form1 از درون form2



saber4166
چهارشنبه 23 مرداد 1387, 12:32 عصر
سلام بر دوستان

من در Form1 یه datagridview1 دارم و می خواهم توسط Form2 این datagridview ای که در form1 دارم رو توسط table ای که در form2 ساختم و پر اش کردم از اطلاعات table بانک
sql رو در datagridview1 که در ّForm1 قرار دارد رو پر کنم
من در form2 ام به این شکل کار کردم

Form1 f1 = new Form1();
f1.dataGridView1.DataSource = ds.Tables["name table"];
f1.ShowDialog();

اما چون form1 رو دوباره show میکنم از form1 دو نمونه ساخته میشه که نمونه ی اول
که قبلا در گام اول برنامه ساخته شده هیچ تغیری درش نمیبینم و فقط تغیرات در form1 ای
که برای بار دوم show شده اعمال میشه

برای این مشکل چه کنم که بار دوم form1 ام show نشه و تغیرات رو در همون form1 اولم ببینم و form2 رو close کنم

saber4166
چهارشنبه 23 مرداد 1387, 13:14 عصر
دوستان یکی کمکم کنه نیاز فوری دارم

h.jaza
چهارشنبه 23 مرداد 1387, 13:36 عصر
من نفهمیدم
خیلی نامفهوم نوشتی
تا اونجایی که متوجه شدم، اگر به جای new کردن، فرمتو hide بکنی و دوباره show کنی، مشکلی دیگه برات پیش نخواهد اومد.
البته اگر درست فهمیده باشم.

ammarkarimi
چهارشنبه 23 مرداد 1387, 14:42 عصر
من نفهمیدم
خیلی نامفهوم نوشتی
تا اونجایی که متوجه شدم، اگر به جای new کردن، فرمتو hide بکنی و دوباره show کنی، مشکلی دیگه برات پیش نخواهد اومد.
البته اگر درست فهمیده باشم.

باب یه روشی هست.این چه جوابیه دادی؟!البته منم بلد نیستم.کسی بلد نیست جواب بده؟؟؟؟؟؟؟؟

naeeme
چهارشنبه 23 مرداد 1387, 15:30 عصر
در واقع مشکل شما انتقال اطلاعات بین دو فرم هست که بارها در این تالار دربارش بحث شده. در این مورد( انتقال اطلاعات بین دو فرم) جستجو کنین.

رضا جاسبی
چهارشنبه 23 مرداد 1387, 21:43 عصر
چند تا سوال برای من وجود داره. اول اینکه شما ابتدا فرم 1 رو باز می کنی و یک کارهایی انجام میدی. بعد میای فرم 2 رو باز می کنی و از دیتابیس Select می کنی. بعد می خوای برگردی توی فرم 1 و در گریدت اطلاعات رو داشته باشی. تا اینجا درسته؟
سوال دوم اینه که چرا اطلاعات مورد نیاز Select رو به فرم 1 برنمی گردونی تا همونجا Select رو انجام بدی.
اما فکر می کنم که در فرم 2 نباید new کنی. باید به همون فرم 1 دسترسی داشته باشی. در فرم 2 یک متغیر از نوع فرم 1 تعریف می کنی. (همون Form1 f1 که خودت نوشتی) اما New نمی کنی. بعد به طریقی از فرم یک این متغیر از نوع فرم 1 رو مقدار دهی می کنی. مثلا در Constructor فرم 2 که خودت دوباره می نویسی. فکر کنم در فرم 1 با this به خود فرم 1 دسترسی داری.
اگر حل نشد بگو با هم با این مساله سروکله بزنیم.