我有一份RDLC报告,希望此报告的表格中的一列能够显示图像。我的报告的数据源是一个类,它有一个名为Image of System.Drawing.Image
的属性。
在我的报告中,我将图像控件拖到了列上,然后设置了以下属性:
MIMEType: image/png
Source: Database
Value: =Fields!Image.Value
当我运行报告时,我的图像会出现故障。
我真的很感激任何建议!
提前致谢:o)
答案 0 :(得分:10)
我不知道这是否是最好的解决方案,但我得到了它的工作。看起来问题出在使用System.Drawing.Image。
在我的课堂上,我创建了一个名为ImageByte的新属性,类型为byte []。我没有为ImageByte制作一个setter,但我制作了一个实现以下功能的getter:
MemoryStream ms = new MemoryStream();
Image.Save(ms, System.Drawing.Imaging.ImageFormat.Png);
return ms.ToArray();
我将我的报告更新为= Fields!ImageByte.Value for Value,现在一切看起来都按预期工作:o)
答案 1 :(得分:4)
首先,你在你的项目中加载一个新表格,你可以在下面这行:
reportViewer1.LocalReport.EnableExternalImages = true;
之后在该页面上获取reportViewer并设置它的智能标记,选择设计新报告并从ToolBox对其进行图像控制,设置其属性
Source = External Value = file:\D:Images\Sunset.jpg
注意:图像(Sunset.jpg)保存在D驱动器的Images文件夹中。你根据自己的要求改变了它。