winforms.rdlc数据报表中的外部图像

qf9go6mv  于 2022-11-17  发布在  其他
关注(0)|答案(7)|浏览(174)

我在谷歌上搜索了几天,想在.rdlc数据报告上显示图像,但仍然没有找到解决方案。
我已定下:
如果是,则将其设置为“0”。
图像属性设置为“External”,并已将参数值设置为值属性。

ReportParameter Path;
        Path = new ReportParameter("Path", "C:\\Test\\579569.png");
        this.reportViewer1.LocalReport.SetParameters(new ReportParameter[] { Path });

但是我还是得到了一个破碎的图像。有什么我错过了。我在WinForms中尝试这个。我知道这个问题是别人问的...但是我没有得到我想要的结果。
先谢了

oxosxuxt

oxosxuxt1#

@Praveen是对的,我用Server.MapPath得到了图片的物理路径:

"file:///" + Server.MapPath("~/images/nokia.jpg")

然后再设置reportViewer1.LocalReport.EnableExternalImages = true;

lskq00tm

lskq00tm2#

图像URL必须使用file:////F:\111\333.JPG

oiopk7p5

oiopk7p53#

RDLC中的路径必须是URI,则传递给ReportParameter的字符串是AbsolutePath(在您的示例中为file:///C:/Test/579569.png

Dim filepath As Uri
    filepath = New Uri("C:\Test\579569.png")

    Dim Path As ReportParameter
    Path = New ReportParameter("Path", filepath.AbsolutePath)

    Me.reportViewer1.LocalReport.SetParameters(New ReportParameter() {Path})

请原谅VB .NET代码,但您已经明白了这个想法。

wixjitnu

wixjitnu4#

是否尝试过在rdlc文件中将MIME Type属性设置为ImageControl?

h79rfbju

h79rfbju5#

首先,你在你的项目中取一个新的Form on Load事件你Wright下面这一行:

reportViewer1.LocalReport.EnableExternalImages = true;

然后在该页上使用reportViewer并设置其智能标记,从工具箱中选择“设计新报表并在其上使用图像控件”,设置其属性
来源=外部
值=文件:\D:图像\日落.jpg

**注:**图片(Sunset.jpg)保存在D盘的Images文件夹中。您可以根据自己的要求进行更改。

qyuhtwio

qyuhtwio6#

我在自己的项目中使用这些代码得到了结果

var imagePath = new Uri(HostingEnvironment.MapPath("PATH")).AbsoluteUri;
lr.ReportPath = HostingEnvironment.MapPath("/Report/Test1.rdlc");
lr.EnableExternalImages = true;
lr.SetParameters(new ReportParameter[] { 
    new ReportParameter("Path", imagePath)
});
qvsjd97n

qvsjd97n7#

我知道这是一个旧的职位,但它仍然是相关的现在。我搜索了这么多,大多数的答案是网站。我正在搜索c# reportviewer在一个表单和一个本Map片文件。
使用以下代码效果很好:
在rdlc中添加图像。将源设置为外部,将值设置为File:\C:\MyPics\logo.png
如果路径存储在数据库中,则将值设置为=“File:“+First(Fields!LogoFile.Value,“DataSet 1”)
我还在我的窗体中添加了这段代码(如果愿意,可以直接在reportviewer控件的属性中设置它)reportViewer1.LocalReport.EnableExternalImages = true;

相关问题