PDA

View Full Version : پرینت دیتاگرید با stimulsoft



krasus
چهارشنبه 27 خرداد 1394, 01:45 صبح
سلام
من می خوام با استیمول سافت از دیتاگریدی که کاربر توش چیزمیز نوشته پرینت بگیرم.(یعنی خبری از دیتابیس نیست)
من تونستم دیتا گریدو تو دیتا ست بریزم و با regdata ، دیتا ست رو به شی استیمول بدم.
با متد design شی استیمول رو باز کردم دیدم که توی تب dictunary استیمیول توی دیتابیسش داره دیتا ستم رو نشون میده.
حالا میخوام بدونم چجوری با کد توی سیشارپ دیتا سورس databand رو تعیین کنم؟

krasus
چهارشنبه 27 خرداد 1394, 10:43 صبح
بازم سلام
فکر کنم توضیحاتم خوب نبوده
بزارین یه عکس از فرمی که به صورت آزمایشی درست کردم رو قرار بدم :
132343

اینم از کدی که توی رویداد کلیک دکمه قرار دادم :



DataTable dt = new DataTable();
dt.Columns.Add("name", typeof(String));
dt.Columns.Add("count", typeof(String));


int count = dataGridView1.Rows.Count;


for (int i = 0; i < count-1; i++)
{
dt.Rows.Add();
dt.Rows[i]["name"] = dataGridView1.Rows[i].Cells[0].Value.ToString();
dt.Rows[i]["count"] = dataGridView1.Rows[i].Cells[1].Value.ToString();
}




DataSet ds = new DataSet();
ds.Tables.Add(dt);


stiReport1.Dictionary.Variables["formName"].Value =textBox1.Text;
stiReport1.RegData(ds);


stiReport1.Design();


//stiReport1.Dictionary.Synchronize();


//stiReport1.Show();



اینم یه عکس از محیط دیزاین ریپورتم :
132344
یه تکست باکس دارم که مقدارش به ریپورت ارسال میشه و توی ولیویی که داخل دیزاین ریپورت تعریف کردم نشون داده میشه (جلوی عبارت {نام فرم شما عبارت است از :} توی فرم نشونش میده)
و یه دیتا گرید دارم که اونم اطلاعاتش به ریپورت ارسال میشه ولی فقط توی data source ریپورت یه dataset دارم
132345
(البته توجه داشته باشین که این data set در زمان اجرای برنامه توی data source میاد و قبل از این که برنامه اجرا بشه من توی data source ریپورتم هیچ data set ای ندارم )
بنا براین بعد از اینکه دیزاین روپورت باز شد من فقط می تونم این table ای که با data set به ریپورت فرستادم رو درگ کنم توی صفحه ریپورت تا توی پرینت نشونش بده. حال می خوام بدونم این کار درگ کردن رو چجوری میشه با کد انجام داد؟

من اطلاعات فرم رو پر کردم و آزمایشی ارسال کردم و نتیجه این شد :
132346
132347