View Full Version : سوال: چگونگی دسترسی به آبجکت های فرم دیگر از یک فرم
Salar Ashgi
شنبه 06 تیر 1388, 21:11 عصر
*** قبل از همه چیز بگم ، مطلب مورد نظر من با جستجو پیدا نشد ***
سلام به همه دوستان عزیز ، من تو برنامم دو تا فرم دارم ، در فرم اول یه Data Grid View
و در فرم دوم یه تکست باکس و Button هستش ! قراره متن این تکست باکس توسط Button
در Data Grid View فرم اول درج بشه ! روشی که من استفاده کردم (هرچند میدونم از لحاظ
اصول OOP درست نیست) این بود که ، سطح دسترسی Data Grid View رو public کردم
و در رویداد کلیک Button فرم 2 کد زیر رو نوشتم :
Form1 frm = new Form1();
frm.dataGridView1.Rows.Add(textBox1.Text);
ولی هیچ چیز در Data Grid View ثبت نمیشه ؟!! ممنون میشم اگه راهنمایی کنید !!!
Mahdi.Kiani
شنبه 06 تیر 1388, 21:24 عصر
سلام دوست عزیز
با اینکه جواب این سوال را بار ها دادم.نمونه مثال هم گذاشتم ...
توی فرم دومتون رویداد تعریف کنید و و در فرم آن را هندل کنید. زمین که دکمه موجود بر روی فرم 2 را کلیک می کنید، رویداد مذکور را فراخوانی کنید و مقادیر موجود در تکست باکس ها را به آن پاس دهید. سپس این مقادیر را در فرم 1 و محل هندل رویداد مذکور دریافت کنید و به گرید اضافه کنید./
موفق باشید
Salar Ashgi
شنبه 06 تیر 1388, 22:58 عصر
سلام دوست عزیز
با اینکه جواب این سوال را بار ها دادم.نمونه مثال هم گذاشتم ...
توی فرم دومتون رویداد تعریف کنید و و در فرم آن را هندل کنید. زمین که دکمه موجود بر روی فرم 2 را کلیک می کنید، رویداد مذکور را فراخوانی کنید و مقادیر موجود در تکست باکس ها را به آن پاس دهید. سپس این مقادیر را در فرم 1 و محل هندل رویداد مذکور دریافت کنید و به گرید اضافه کنید./
موفق باشید
ممنون از راهنمایی شما ، اگه زحمتی نیست واسه این مورد یه نمونه کدی ارائه بفرمائید !!!
خیلی ممنون از لطف شما !!!
Salar Ashgi
یک شنبه 07 تیر 1388, 23:59 عصر
دوستان منتظر راهنمایی شما عزیزان هستم !!! (هرچه سریعتر باشه ، ممنون میشم)
mahdi_7610
دوشنبه 08 تیر 1388, 09:53 صبح
سلام
این سوال را من یکبار پرسیده بودم ولی به جواب نرسیدم .
فکر کنم منظور مهدی کیانی تاپیک زیر باشه . به جواب رسیدی ما را هم خبر کن
http://barnamenevis.org/forum/showthread.php?t=91138
مخصوصا این پست
http://barnamenevis.org/forum/showpost.php?p=446809&postcount=28
موفق باشی
Sajjad.Aghapour
دوشنبه 08 تیر 1388, 10:40 صبح
کدهای فرم اول
private void button1_Click(object sender, EventArgs e)
{
using (Form2 frm = new Form2())
{
if (frm.ShowDialog() == DialogResult.OK)
{
dataGridView1.Rows.Add(frm.RowCells);
}
}
}
کدهای فرم دوم
object[] para;
public object[] RowCells
{
get { return para; }
}
private void button1_Click(object sender, EventArgs e)
{
para = new object[] { textBox1.Text, textBox2.Text };
}
sadeghgilanisadegh
دوشنبه 08 تیر 1388, 13:23 عصر
(Property dataGridView1=Public ) دیتا گریدی که می خواهی به آن دسترسی داشته باشی را به Public تغیر بده مشکلت حل میشه
private void btn_Log_Click(object sender, EventArgs e)
{
Form2 frm = new Form2();
frm.Show();
//In First must Property dataGridView1==Pulice
frm.dataGridView1.Rows[0].Cells[0].Value = "qqqqqqqqqq";
frm.dataGridView1.Rows[0].Cells[1].Value = "xxxxxxxxxx";
}
این هم یه نمونه برنامه
Sajjad.Aghapour
دوشنبه 08 تیر 1388, 13:52 عصر
دیتا گریدی که می خواهی به آن دسترسی داشته باشی را به Public تغیر بده مشکلت حل میشه
نه عزیز.این روش اشتباهه....
قبلا در این مورد بحث شده....
...
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.