在ASP.NET中的Crystal Reports中动态更改/添加图像

时间:2013-11-29 17:00:15

标签: c# asp.net crystal-reports

我正在处理ASP.NET MVC Web应用程序的报告部分,用户可以在其中更改Crystal Report的参数并下载生成的报告文件。我们使用的每个报告模板顶部都有一个徽标,但我需要动态更改图形位置(图形位置在图像对象中是硬编码的,但它使用的网址不再可用,因此我需要更改它动态地)。

我发现了一些解决方案,建议使用公式作为图形位置,并在生成报告时更改代码,但这不可行,因为我必须手动更改150+ .rpt文件。我真正需要的是以某种方式访问​​图像对象的图形位置属性。

我正在转换用于执行此操作的旧VB6控件:

Private Sub gCurrentSection_Format(ByVal pFormattingInfo As Object)
    Dim logoImage As StdPicture
    Set logoImage = LoadPicture("...\logo.jpg")
    Set gLogo.FormattedPicture = logoImage
End Sub

其中gLogo是图像对象(类型是CRAXDRT.crOleObject)。通过循环遍历报表中的所有部分和报表对象,直到找到图像,找到了此对象。

我正在使用Crystal Reports for .NET Framework 4.0(版本13.0.2000.0),而rpt文件正在使用CR 2008。

有没有办法可以访问我的对象的图形位置属性而无需更改报告文件?

编辑:我做了很多谷歌搜索,似乎你无法访问代码中的“图形位置”属性。我想出了如何在代码中抑制徽标,所以我现在的问题是如何动态地将新图像添加到某个部分?我在网上找到的所有文章都建议将图像本身作为二进制数据添加到我的数据源中,这也是我不能在不更改报告的情况下做的。有什么建议吗?

0 个答案:

没有答案