I have an RDLC report and would like one of the columns in a table on this report to display images. The datasource for my report is a class that has a property called Image of
Firstly, you take a new Form in your project on Load event you Wright this line below:
reportViewer1.LocalReport.EnableExternalImages = true;
After that take reportViewer on that page and set smart tag of that, choose Design a new report and take an image control on it from ToolBox, set its property
Source = External Value = file:\D:Images\Sunset.jpg
Note: Image(Sunset.jpg) saved in Images folder on D drive. You changed it according to your requirement.
I don't know if this is the best solution, but I got it to work. It looks like the problem was in using System.Drawing.Image.
In my class, I created a new property called ImageByte of type byte[]. I didn't make a setter for ImageByte, but I made a getter that does the following:
MemoryStream ms = new MemoryStream();
Image.Save(ms, System.Drawing.Imaging.ImageFormat.Png);
return ms.ToArray();
I updated my report to have =Fields!ImageByte.Value for the Value and now everything appears to be working as expected :o)