PDA

View Full Version : ارسال اطلاعات از یک فرم به یک فرم دیگه



patrick5053
سه شنبه 23 خرداد 1391, 16:04 عصر
من یک فرم پدر در حال اجرا دارم، حالا از داخل اون فرم یک کلیدی هست که باعث میشه یک فرم دیگه باز بشه (به صورت فرم فرزند(فرم در داخل فرم))، حالا میخوام از اون فرمی که باز شده یک سری اطلاعات به فرم قبلی ارسال بشه و اون فرم بسته بشه، چیکار باید انجام بده؟

ahmadreza517
سه شنبه 23 خرداد 1391, 16:14 عصر
به نام تنها برنامه نویس هستی
سلام
از property استفاده کنید .
http://msdn.microsoft.com/en-us/library/x9fsa0sw.aspx

patrick5053
سه شنبه 23 خرداد 1391, 16:23 عصر
سلام
به این سایتی که لطف کردی گفتی رفتم ولی چیزی دستگیرم نشد میشه یه مثال کوچولو برام بنویسی؟

ahmadreza517
سه شنبه 23 خرداد 1391, 16:28 عصر
فرم قبلی همون فرم والد هست ؟

saeedx28
سه شنبه 23 خرداد 1391, 18:29 عصر
شما در فرم پدر اگر متغیر هایی از نوع public static ایجاد کنید در فرمهایی که از دردون فرم پدر باز می شود می توانید به آن دسترسی داشته باشید به روش زیر:

نام متغیر .نام فرم پدر

مثلاً اگر در فرم پدر متغیری مثل public static name ; داشته باشید و نام فرم Form1 باشد در فرمهای child می توانید با دستور Form1.name آن را مقدار دهی کنید
البته فراموش نشود که فرم child را با متد showdialog فراخوانی کنید

فرید نجفلو
سه شنبه 23 خرداد 1391, 20:33 عصر
سلام

اگه فرم رو به صورت دیالوگ نمایش می دید:

private void button1_Click(object sender, EventArgs e)
{
Form1 frm1 = new Form1();
DialogResult res = frm1.ShowDialog();
if (res == System.Windows.Forms.DialogResult.OK)
MessageBox.Show(frm1.textBox1.Text);
}


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

private void button1_Click(object sender, EventArgs e)
{
Form1 frm1 = new Form1();
frm1.FormClosed+=new FormClosedEventHandler(frm1_FormClosed);
frm1.MdiParent = this;
frm1.Show();
}
private void frm1_FormClosed(object sender, FormClosedEventArgs e)
{
Form1 frm1 = (Form1)sender;
MessageBox.Show(frm1.textBox1.Text);
}

patrick5053
چهارشنبه 24 خرداد 1391, 12:36 عصر
هر دوتا فرمی که من استفاده میکنم فرمهای فرزند هستند میخوام از یک فرم اطلاعات بره به فرم قبلی و فرم فعلی بسته بشه، یعنی نمیخوام فرم قبلی دوبار ساخته بشه میخوام همون فرم باشه فقط فرم دوم بسته بشه و اطلاعات به فرم اول ارسال بشه