PDA

View Full Version : سوال: آپدیت کردن دیتاسورس از فرم دیگر؟



mohammad5530
شنبه 01 تیر 1392, 12:43 عصر
سلام

من 2 تا فرم دارم.

توی فرم اول اطلاعات در یک لیست باکس نمایش داده میشه و در فرم دوم به دیتا افزوده میشه

من میخام توی فرم دوم بعد از اینکه دیتا افزوده شد ، دیتاسورس لیست باکس فرم اول رفرش بشه

لطفا اگه میشه راهنمایی کنید

mz6488
شنبه 01 تیر 1392, 13:12 عصر
سلام.میخوای بعد اینکه فرم دوم بسته شد دیتاسورس رفرش بشه؟

mohammad5530
شنبه 01 تیر 1392, 13:43 عصر
نه

میخام زمانی که کلید افزودن زده شد

mohammad5530
شنبه 01 تیر 1392, 16:00 عصر
کسی نیست؟
لطفا کمک کنید

mz6488
شنبه 01 تیر 1392, 16:59 عصر
ویژوال من قاطی کرده نمیتونم به دیتابیس وصل بشم ولی یه راه پیدا کردم شاید زیاد جالب نباشه.یه تایمر تو فرم 1 اضافه کن که مثلا هر 1 ثانیه یک بار دیتاسورس رو آپدیت کنه

mohammad5530
شنبه 01 تیر 1392, 17:32 عصر
این شکلی کار قشنگی نیست

مطمئن هستم یک راه ساده ای داره.چون قبلا استفاده کردم ولی متاسفانه یادم رفته

mz6488
شنبه 01 تیر 1392, 17:40 عصر
با چه روشی به بانک وصل شدی؟

mohammad5530
شنبه 01 تیر 1392, 19:58 عصر
من از طریق LINQ به دیتابیس وصل شدم

mohammad5530
دوشنبه 03 تیر 1392, 19:37 عصر
لطفا جواب بدید

Mahmoud.Afrad
دوشنبه 03 تیر 1392, 19:54 عصر
برای اینکه بسیار تکراری هست کسی جواب نمیده.
یه مثال میزنم.
در فرمی که قراره دیتاسورس رفرش بشه ، کد رفرش دیتاسورس را در یک متد قرار بدید.

internal protected void UpdateListBox()
{
listBox1.DataSource = db.tbl.ToList();
listBox1.DisplayMember = "name";
}

موقع نمایش فرم دوم Owner را ست کنید:

Form2 frm = new Form2();
frm.Owner = this;
frm.ShowDialog();

در فرم دوم بعد از تغییر در دیتابیس از طریق Owner متد را صدا بزنید:

tbl t = new tbl() { name = "aaaaaaaaaaaaaaaaa" };
Database1Entities db = new Database1Entities();
db.tbl.AddObject(t);
db.SaveChanges();

FrmMain frm = this.Owner as FrmMain;
frm.UpdateListBox();