PDA

View Full Version : سوال: انتقال اطلاعات دیتاگرید به ابزار کریستال ریپورت



pedramfj
پنج شنبه 28 بهمن 1389, 17:23 عصر
سلام
میخواهم اطلاعات یک دیتاگرید را(دارای 5 ستون ) بطور کامل به ابزار گزارش سازی کریستال ریپورت در فرمی دیگر منتقل کنم.
من با کد زیر اطلاعات یک دیتا گرید را به دیتاگرید دیگری در فرم دیگر منتقل می کنم.
چگونه این کار را با ابزار گزارش سازی کریستال ریپورت انجام دهم؟
تشکر...

DataTable tb1 = new DataTable();
DataColumn dc0 = new DataColumn("ردیف", typeof(string));
DataColumn dc1 = new DataColumn("نام کتاب", typeof(string));
DataColumn dc2 = new DataColumn("نویسنده", typeof(string));
DataColumn dc3 = new DataColumn("انتشارات", typeof(string));
DataColumn dc4 = new DataColumn("تعداد", typeof(string));

tb1.Columns.Add(dc0);
tb1.Columns.Add(dc1);
tb1.Columns.Add(dc2);
tb1.Columns.Add(dc3);
tb1.Columns.Add(dc4);

tb1.Clear();
for (int i = 0; i < dataGridView1.Rows.Count; i++)
{
if (Convert.ToBoolean(dataGridView1.Rows[i].Cells[5].Value) == true)
{
DataRow dr = tb1.NewRow();
dr[0] = dataGridView1.Rows[i].Cells[0].Value;
dr[1] = dataGridView1.Rows[i].Cells[1].Value;
dr[2] = dataGridView1.Rows[i].Cells[2].Value;
dr[3] = dataGridView1.Rows[i].Cells[3].Value;
dr[4] = dataGridView1.Rows[i].Cells[4].Value;
tb1.Rows.Add(dr);
}
}//for
در فرم دوم:

public all_book_list_show(DataTable dt)
{
InitializeComponent();
dataGridView1.DataSource = dt;
}

Reza_Yarahmadi
پنج شنبه 28 بهمن 1389, 21:29 عصر
من با کد زیر اطلاعات یک دیتا گرید را به دیتاگرید دیگری در فرم دیگر منتقل می کنم.
چگونه این کار را با ابزار گزارش سازی کریستال ریپورت انجام دهم؟
در صورتی که گرید اول به یک دیتا سورس وصل باشه نیازی به کد نویسی زیادی نیست. میشه بصورت زیر هم عمل کرد.

public all_book_list_show(object dt)
{
InitializeComponent();
dataGridView1.DataSource = dt;
}

all_book_list_show f2 = new all_book_list_show(dgInForm1.DataSource);
برای کریستال هم میشه بصورت بالا عمل کرد.

Reza_Yarahmadi
دوشنبه 02 اسفند 1389, 17:07 عصر
به نمونه ساده زیر یک نگاه بندازید.