View Full Version : سوال: چه طوری آدرس یک عکس رو به StimulReport پاس بدم؟
NasimBamdad
یک شنبه 15 اردیبهشت 1392, 11:07 صبح
سلام و خسته نباشید .
یک کنترل Image روی گزارش ساخته شده با StimulReport قرار دادم ، حالا می خوام یک عکس رو از C# انتخاب کنم و آدرسش رو به اون کنترل Image پاس بدم .
و اینکه عکس در گزارش StimulReport به صورت Strech در بیاد .
راهش رو کسی بلده !؟
keyvan_s89
یک شنبه 15 اردیبهشت 1392, 12:18 عصر
یه دونه New Variable بساز از نوع image با اسم مثلا Pic بعد درگ کن و Save
تویه کد نویسی هم
stireport.Dictionary.Variables["pic"].ValueObject = pictureBox1.Image;
NasimBamdad
یک شنبه 15 اردیبهشت 1392, 13:00 عصر
یه دونه New Variable بساز از نوع image با اسم مثلا Pic بعد درگ کن و Save
تویه کد نویسی هم
stireport.Dictionary.Variables["pic"].ValueObject = pictureBox1.Image;
سلام . مرسی دوست عزیز
ببین من الان عکس ها رو در یک فولدر ذخیره کردم و می خوام آدرسش رو بهش بدم . از این کد استفاده کردم
StiReport stiReport1 = new StiReport();
stiReport1.Load("Reports\\Patient_Card.mrt");
stiReport1.Dictionary.Databases.Clear();
stiReport1.Dictionary.Databases.Add(new StiSqlDatabase("Connection", ConfigurationManager.AppSettings["ConnectionString"]));
stiReport1.Dictionary.DataSources["DS1"].Parameters[0].Value = textBox1.Text;
if (File.Exists(Application.StartupPath + "\\Images\\P-IMG\\" + textBox1.Text + "" + ".jpg"))
{
string a = Application.StartupPath + "\\Images\\P-IMG\\" + textBox1.Text + "" + ".jpg";
stiReport1.Dictionary.Variables["pic"].ValueObject = a;
}
else
{
string b = Application.StartupPath + "\\Images\\ico\\N0.png";
stiReport1.Dictionary.Variables["pic"].ValueObject = b;
}
stiReport1.Show();
اما این Error و بهم میده
The input is not a valid Base-64 string as it contains a non-base 64 character, more than two padding characters, or a non-white space character among the padding characters.
morteza271
دوشنبه 16 اردیبهشت 1392, 10:34 صبح
سلام.
روشی که استفاده کردین تقریبا درسته.
به این صورت من انجام دادم مشکلی نداشت :
1- یه Variable به اسم imgPath تعریف کردم.
2- یه کنترل Image گذاشتم.
3- بر روی کنترل Image دابل کلیک کردم تا صفحه ی جدید باز بشه.
4- در صفحه ی باز شده در قسمت ImageURL اون متغیر imgPath رو به صورت زیر قرار دادم :
{imgPath}
5- بعد هم از سی شارپ به صورت زیر مسیر تصویر رو به متغیر imgPath ارسال کردم به صورت زیر :
string Path = Application.StartupPath + "\\test.jpg";
stiReport1.Dictionary.Variables["imgPath"].Value = Path;
بعد هم که اجرا کردم بدون هیچ مشکلی گزارش باز شد و تصویر هم داخل اون بود.
موفق باشید.
NasimBamdad
دوشنبه 16 اردیبهشت 1392, 15:24 عصر
سلام.
روشی که استفاده کردین تقریبا درسته.
به این صورت من انجام دادم مشکلی نداشت :
1- یه Variable به اسم imgPath تعریف کردم.
2- یه کنترل Image گذاشتم.
3- بر روی کنترل Image دابل کلیک کردم تا صفحه ی جدید باز بشه.
4- در صفحه ی باز شده در قسمت ImageURL اون متغیر imgPath رو به صورت زیر قرار دادم :
{imgPath}
5- بعد هم از سی شارپ به صورت زیر مسیر تصویر رو به متغیر imgPath ارسال کردم به صورت زیر :
string Path = Application.StartupPath + "\\test.jpg";
stiReport1.Dictionary.Variables["imgPath"].Value = Path;
بعد هم که اجرا کردم بدون هیچ مشکلی گزارش باز شد و تصویر هم داخل اون بود.
موفق باشید.
ممنونم مشکل حل شد . اما یک سوال .
عکسی که من دارم سایزش بزرگه و اگه بخوام به اندازه سایزش رو گزارش بیارم همه چیز بهم می خوره . به نظر شما چه کار باید کرد که عکس در ابعاد اون کنترل IMAGE کوچیک بشه ؟ کلا Stretch بشه
آیا امکانش هست !؟
morteza271
پنج شنبه 19 اردیبهشت 1392, 10:30 صبح
کنترل Image توی استیمول یه پراپرتی داره به اسم Stretch اونو true کن درست میشه.
vBulletin® v4.2.5, Copyright ©2000-1403, Jelsoft Enterprises Ltd.