zoukankan      html  css  js  c++  java
  • [转帖]在RDLC中使用外部图片

    原文链接:http://blog.csdn.net/rock870210/article/details/4559962

    在RDLC中使用外部图片

     关于在报表中添加图片的内容,网上有很多。但一直没找到合适的,今天才发现一个方法给了我提示,现在把它写出来,希望能帮助和我一样聚到问题的朋 友:  在ReportViewer中添加RDLC就不细说了,这里说明我的情况,我在报表中要显示作品下载信息,其中包含的有作品的缩微图,图片物理文件存在 项目中,数据库中保存的为相对路径。在RDLC中的Table相应列添加一个Image,设定其Source属性为External,Value属性为数 据源相应字段(图片路径)值,我是用List《》集合添加的,value值得格式为:="file:///" & Fields!CUPDLR_ProSmallLogoPath.Value(CUPDLR_ProSmallLogoPath为数据库相应字段),这里的”file:///“是非常重要的,不能缺省。后面接的是图片的物理路径,在cs文件中我已改动 至此,RDLC已基本设定好。在cs文件中: 

    [c-sharp] view plaincopy
    1. protected void BindReportViewer(int year, int month) {   
    2.         int proCount = 0;//记录作品数目   
    3.         //获取list集合   
    4.         List list = BComUserProDownLoadReport.GetList(year, month, comId,out proCount);   
    5.         UpdateImgURL(list);//修改图片相对路径为物理路径   
    6.         //this.ReportViewer1.LocalReport.EnableHyperlinks = true;   
    7.         this.ReportViewer1.LocalReport.EnableExternalImages = true;//设定EnableExternalImages属性为TRUE,允许使用外部图片(默认是不允许的)   
    8.         ReportParameter param1 = new ReportParameter("CurrentDate", year.ToString() + "-" + month.ToString());//构造报表参数-查询年月   
    9.         ReportParameter param2 = new ReportParameter("CompanyName", "金长城");//构造报表参数-公司名称   
    10.         ReportParameter param3 = new ReportParameter("ProductCount", proCount.ToString());//构造报表参数-作品数目   
    11.         ReportViewer1.LocalReport.SetParameters(new ReportParameter[] { param1, param2,param3 });//为报表参数指定值   
    12.         //实例化报表查看器数据源   
    13.         ReportDataSource rds = new ReportDataSource("ComUserProDownLoadReportDataSet_DataTable1", list);   
    14.         this.ReportViewer1.LocalReport.DataSources.Clear(); this.ReportViewer1.LocalReport.DataSources.Add(rds);   
    15.         this.ReportViewer1.LocalReport.Refresh();   
    16.     }   
    17.     //修改图片相对路径为物理路径   
    18.     protected void UpdateImgURL(List list) {   
    19.         foreach (ADOnline.Model.ComUserProDownLoadReport cplr in list) {   
    20.             if (cplr.CUPDLR_ProSmallLogoPath != null && cplr.CUPDLR_ProSmallLogoPath.Trim().Length > 0)   
    21.                 cplr.CUPDLR_ProSmallLogoPath = Server.MapPath(cplr.CUPDLR_ProSmallLogoPath);   
    22.         }   
    23.     }  

    显示外部图片的关键部分就是file:///+图片物理路径,其他的根据自己需求做相应的更改吧!时间关系,不再啰嗦了!

  • 相关阅读:
    导入myeclipse项目出现的问题及解决方案
    sqlserver允许远程连接的配置
    Microsoft SQL Server,附加数据库 错误:Error 916解决方法
    [svc]linux常用手头命令-md版-2017年11月12日 12:31:56
    [elk]es增删改查最佳实战
    [docker]docker日志驱动记录nginx日志情形探究
    [js]面向对象2
    [js]面向对象1
    [js]js中函数传参判断
    [k8s]k8s-ceph-statefulsets-storageclass-nfs 有状态应用布署实践
  • 原文地址:https://www.cnblogs.com/chutianshu1981/p/4326275.html
Copyright © 2011-2022 走看看