# برنامه نویسی با محصولات مایکروسافت > برنامه نویسی مبتنی بر Microsoft .Net Framework > ابزارهای گزارش سازی >  مشکل در نمایش عکس در استیمول سافت

## setareh2013

سلام
من از کدهای زیر برای نمایش عکس در استیمول سافت استفاده کردم
چند تا تاپیک در این باره داخل این سایت پیدا کردم . کدهای من با کدهایی که پیشنهاد شده بود فرقی نمی کنه
نوع Image رو در استیمول سافت از نوع byte[]  تعریف کردم ولی باز هم عکس رو نشون نمیده
باید چه کار کنم 
DataTable dt = newDataTable();
                dt = ct.showpatien();
 SqlConnection cn = newSqlConnection("Data Source=(local);Initial Catalog=db;Integrated Security=True");
Image bmp = null;
            System.IO.FileStream stream = null;
string fileName = (Application.StartupPath + @"\images\" + "myjpeg.jpg");
            stream = new System.IO.FileStream(fileName, System.IO.FileMode.Open, System.IO.FileAccess.Read);
byte[] buf = newbyte[stream.Length];
                stream.Read(buf, 0, buf.Length);
             bmp = Image.FromStream(new System.IO.MemoryStream(buf));
                stiReport1.Dictionary.DataStore.Clear();
             stiReport1.Load(Application.StartupPath + @"\Report\stiReport1.mrt");
            tiReport1.RegData("Data", cn);
                stiReport1.Compile();
             (stiReport1.GetComponentByName("Image1") asStiImage).Image = bmp;
                stiReport1.Show();
با تشکر

----------


## systam

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

نمونه مثالی زده شده

----------


## khokhan

> من از کدهای زیر برای نمایش عکس در استیمول سافت استفاده کردم
> چند تا تاپیک در این باره داخل این سایت پیدا کردم . کدهای من با کدهایی که پیشنهاد شده بود فرقی نمی کنه
> نوع Image رو در استیمول سافت از نوع byte[]  تعریف کردم ولی باز هم عکس رو نشون نمیده
> باید چه کار کنم


درستش اینطوریه:
 Image bmp = null;
            System.IO.FileStream stream = null;
            string fileName = (Application.StartupPath + @"\Images\" + "myjpeg.jpg");
            
               stream = new System.IO.FileStream(fileName, System.IO.FileMode.Open, System.IO.FileAccess.Read);
                byte[] buf = new byte[stream.Length];
                stream.Read(buf, 0, buf.Length);
                bmp = Image.FromStream(new System.IO.MemoryStream(buf));
            
            Stimulsoft.Report.StiReport stiReport1 = new Stimulsoft.Report.StiReport();
            stiReport1.Load(System.Windows.Forms.Application.S  tartupPath + @"\stirpt.mrt");
          
            stiReport1.Compile();
            (stiReport1.GetComponentByName("Image1") as StiImage).Image = bmp;
            stiReport1.Design();
            stiReport1.Show();

----------


## setareh2013

> درستش اینطوریه:
>  Image bmp = null;
>             System.IO.FileStream stream = null;
>             string fileName = (Application.StartupPath + @"\Images\" + "myjpeg.jpg");
>             
>                stream = new System.IO.FileStream(fileName, System.IO.FileMode.Open, System.IO.FileAccess.Read);
>                 byte[] buf = new byte[stream.Length];
>                 stream.Read(buf, 0, buf.Length);
>                 bmp = Image.FromStream(new System.IO.MemoryStream(buf));
> ...


با تشکر از شما
این کد تا خط stiRetport1.Design رو اجرا می کنه و فایل طراحی رو نشون میده و عکس رو هم داخل اون فایل نشون میده ولی بعد از چند لحظه به خط stiReport1.show خطا ی زیر رو میده و برنامه متوقف میشه
error CS1647: An expression is too long or complex to compile near 'Reports.Report.InitializeComponent()'
نمیدونین مشکل از کجاست ؟
با تشکر

----------


## setareh2013

کسی نمی تونه راهنماییم کنه ؟

----------


## setareh2013

چرا یکی به من کمک نمی کنه ؟! دو هفته ست روی این خطا گیر کردم

----------


## vb341

دوست عزيز اگر به متن ارور دقت كنيد پيام InitializeComponent داره ميده اين يعني اينكه مشكلي در رفرنس ها داريد . 
در ضمن ميتونين همون متن ارور رو در گوگل جستجو كنيد

----------


## fakhravari

یک فیلد درست کنید از نوع byte[] یا byte

----------


## setareh2013

ورژن 2013 که آقای فخرآوری داخل 
https://barnamenevis.org/showthread.p...ول-سافت
گذاشته بودند رو دانلود کردم مشکل حل شد . به خاطر ورژن استمیول سافت بود .

----------

