PDA

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



eatmadio
جمعه 25 اردیبهشت 1394, 13:41 عصر
با سلام و عرض خسته نباشید خدمت اساتید محترم

چطور میشه اطلاعات انتخاب شده از دیتاگرید فرم دوم که بانک اطلاعات متصل هست را به دیتاگرید فرم اول با استفاده از چک باکس ارسال کنم.
در صورت امکان راهنمایی کنید من خیلی گشتم ولی پیدا نکردم./
http://barnamenevis.org/attachment.php?attachmentid=130962&d=1430927726
http://barnamenevis.org/attachment.php?attachmentid=130963&d=1430927742

ebrahim.rayatparvar
جمعه 25 اردیبهشت 1394, 15:02 عصر
سلام دوست من.
شما برای اینکه این کار رو بکنید باید به گرید فرم اول در فرم دوم دسترسی داشته باشن.
برای این کار فکر کنید در فرم 2 چنین سازنده ای داری


public From2()
{
InitializeComponent();
}


حالا یک سازنده دیگه به این صورت درست کنید


public From2(Form1 frmMain)
{
InitializeComponent();
frm = frmMain;
}


frm هم متغیری از نوع From1 میباشد که اینجا مقدار دهی میشود و در کل برنامه میشود از آن استفاده کرد.

حالا زمان فراخوانی در فرم2 در فرم1 به این صورت عمل کنید


From2 frm = new From2(this);
frm.ShowDialog();


حالا شما به گرید فرم یک دسترسی کامل دارید و به راحتی میتوانید گرید فرم1 را رفرش کنید.

eatmadio
جمعه 25 اردیبهشت 1394, 20:11 عصر
می بخشید یک سوال دیگه
من تا که کد زیر را اجرا میکنم




for (int i = 0; i < dataGridView1.Rows.Count; i++)
{
if (Convert.ToBoolean(dataGridView1.Rows[i].Cells[0].Value) == true)
{

frm.dataGridView1.Rows.Add();


frm.dataGridView1.Rows[i].Cells["namekala"].Value = dataGridView1.Rows[i].Cells["namekala"].Value;

frm.dataGridView1.Rows[i].Cells["number"].Value = dataGridView1.Rows[i].Cells["numberfor"].Value;
frm.dataGridView1.Rows[i].Cells["vahed"].Value = dataGridView1.Rows[i].Cells["vahed"].Value;
frm.dataGridView1.Rows[i].Cells["fy1"].Value = dataGridView1.Rows[i].Cells["fy"].Value;


}




}//for


خطای زیر را میدهد.

131278


131280
اکر اولی را انتخاب کنم خطا نمیدهد ولی از دومی که انتخاب میکنم خطا میدهد
مشکل از کجاست.