ارسال مقادیر بین datagridview های دو فرم
با عرض سلام و وقت بخیر
در مورد ارسال مقادیر دیتاگریدویوها بین دو تا فرم مختلف برام یه مشکلی به وجود اومده .برنامه در پلتفرم Windows Form است و به زبان C# و دیتابیس SQL Server .
فرض کنید که یک دیتابیس SQL به نام TestDB ساختیم و در داخل این دیتابیس TestDB هم یک جدولی به نام Persons ایجاد کردیم و داخل این جدول نیز فیلدهای نام , نام خانوادگی و شماره تلفن رو ایجاد کردیم در ضمن داخل این جدول هم چندین رکورد مثلا" 10 رکورد رو اضافه کردیم.
حالا فرض کنید که در برنامه خودمون , دو تا فرم داریم به نام های فرم یک و فرم دو.
در فرم یک, یک دکمه گذاشتیم به نام ارسال اطلاعات و یک دیتاگریدویو هم گذاشتیم به نام datagrideview1 که در داخل این دیتاگریدویو هم مقادیر فیلدهای نام , نام خانوادگی و شماره تلفن بایند میشه. یعنی رکوردهای موجود در جدول دیتابیس خودمون رو , در این دیتاگریدویو نمایش دادیم .
در فرم دو نیز فقط یک دیتاگریدویو گذاشتیم به نام datagrideview2.
حالا میخوام وقتی که چندین سطر دلخواه از دیتاگریدویو فرم یک رو انتخاب کردم و روی دکمه ارسال اطلاعات کلیک کردم , مقادیر سطرهای انتخابی ام, بروند به دیتاگریدویو مربوط به فرم دو. دوستان لطفا" کمک کنید.
خیلی خیلی ممنونم از لطف و محبت شما. خیلی ممنونم.
1 ضمیمه
نقل قول: ارسال مقادیر بین دیتاگرید ویوها
نقل قول: ارسال مقادیر بین datagridview های دو فرم
لینک آموزش
با فرض اینکه در فرم اول یک دیتاگریدویو و یک دکمه و در فرم دوم یک دیتاگریدویو داشته باشید و بخوایهد با کلیک بر روی دکمه سطرهای انتخاب شده دیتاگریدویو فرم اول به دیتاگریدویو فرم دوم منتقل شوند باید در رویداد کلیک دکمه در فرم اول کدهای زیر :
private void button1_Click(object sender, EventArgs e)
{
if (this.dataGridView1.Rows.Count > 0)
{
List<DataGridViewRow> selectedRows = new List<DataGridViewRow>();
for (int i = this.dataGridView1.SelectedRows.Count - 1; i >= 0; i--)
{
selectedRows.Add(this.dataGridView1.SelectedRows[i]);
}
if (selectedRows.Count > 0)
{
Form2 form2 = new Form2(selectedRows);
form2.ShowDialog();
}
}
}
و در فرم دوم هم کدهای زیر را بنویسید :
using System;
using System.Collections.Generic;
using System.Windows.Forms;
namespace TransferValueDGV
{
public partial class Form2 : Form
{
private List<DataGridViewRow> _selectedRows;
public Form2(List<DataGridViewRow> selectedRows)
{
InitializeComponent();
this._selectedRows = selectedRows;
}
private void Form2_Load(object sender, EventArgs e)
{
if (this._selectedRows != null &&
this._selectedRows.Count > 0)
{
for (int i = 0; i < this._selectedRows.Count; i++)
{
this.dataGridView1.Rows.Add(this._selectedRows[i].Cells[0].Value.ToString(),
this._selectedRows[i].Cells[1].Value.ToString());
}
}
}
}
}
برنامه را اجرا و با انتخاب چند سر و زدن دکمه نتیجه را مشاهده کنید :
http://www.w3-farsi.com/wp-content/u...-in-csharp.jpg
لینک آموزش