VS2010起,微软不再自带水晶报表,而是提供了RDLC报表,也就是微软自家做的。最近有个项目要用到这个报表加载图片然后打印,于是就研究了下:
如图:在winform项目中添加一个report项:
打开后向其中添加一个图像控件:
这个就是我们要向里面添加图像的地方了。
一共有3种方式:
第一种:设置从数据库绑定。如图:
这种方式是需要新建报表参数,然后和数据库表中字段绑定的,根据不同数据库表中对图像类型的处理不同选择不同的MIME类型。实现起来,将表中映射图像字段值赋值给对应的报表参数,代码形式可以参考第三种。
第二种:直接在图像控件中指定图片Url,即静态加载。
在上图中,选择图像来源为“嵌入”,然后选择图片即可。
第三种:动态加载。(同样是加载图片Url,只不过是可以自己动态指定的)
1.新建一个报表参数:属性设置成“文本”。
2.控件Source属性设置为:External(外部)
3.设置Value属性表达式,如图,我们将之前新建的参数的value赋值给本控件的value值。这个value就是图片所在的Url路径。
4.在winform窗体中添加一个report控件,报表选择为我们刚刚新建的那个report1.rdlc。在该控件的load事件中加入如下代码:
private void reportViewer1_Load(object sender, EventArgs e)
{
reportViewer1.LocalReport.EnableExternalImages = true;//启用外部加载图片。默认false
ReportParameter params1;
params1 = new ReportParameter("ReportParameter_Image", "file:///D:\\1.jpg");//注意图片路径格式
reportViewer1.LocalReport.SetParameters(new ReportParameter[] { params1 });//加载参数
//this.reportViewer1.LocalReport.Refresh();
}
至此:三种方式简单介绍完毕,如有不妥请各位大神指教。
本文原创,谢绝转载。
今天的文章VS2010自带报表控件(RDLC)加载图片相关分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/61386.html