rdlc - 如何 : Change Image visibility on rdlc export

标签 rdlc

我在 rdlc 报告中有一个图像。 在报告中,我将可见性设置为 false 当我导出 为 PDF 或 EXCEL 时,我希望这样做 将图像可见性设置为 true。

  • 我该怎么做?
  • 这是捕捉导出事件的方法吗?
  • 我不想创建自定义“导出”。

谢谢……

最佳答案

我找到的唯一方法是创建一个自定义的“导出”函数……这真的很简单。

第 1 步:在您的报表中创建一个名为“ShowImage”的参数。我使用了 String 数据类型,隐藏了提示并设置了默认值“False”。这样,当报告首次在您页面上的报告查看器中运行时,它不会被隐藏。

第 2 步:将图像的可见性属性更改为具有以下内容的表达式:

=CBool(Parameters!ShowImage.Value)

第 3 步:隐藏报告查看器上的导出控制。这是我的例子:

<rsweb:ReportViewer ID="ReportViewer1"  runat="server" ShowExportControls="false" Font-Names="Verdana" Font-Size="8pt">
        <LocalReport ReportPath="Report1.rdlc" >
        </LocalReport>
    </rsweb:ReportViewer>

第 4 步:将按钮添加到您的页面并编写自定义导出代码。您需要确保设置您在第 1 步中创建的参数。

Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click

    'Create ReportViewer
    Dim viewer As New Microsoft.Reporting.WebForms.ReportViewer()
    Dim p(0) As Microsoft.Reporting.WebForms.ReportParameter

    p(0) = New Microsoft.Reporting.WebForms.ReportParameter("ShowImage", "True")

    viewer.LocalReport.ReportPath = Server.MapPath("Report1.rdlc")
    viewer.LocalReport.SetParameters(p)

    'Export to PDF
    Dim reportContent As Byte() = viewer.LocalReport.Render("PDF", Nothing, Nothing, Nothing, Nothing, Nothing, Nothing)

    'Return PDF
    Me.Response.Clear()
    Me.Response.ContentType = "application/pdf"
    Me.Response.AddHeader("Content-disposition", "attachment; filename=Report.pdf")
    Me.Response.BinaryWrite(reportContent)
    Me.Response.End()

End Sub

就是这样。请问,您为什么不想创建自定义导出事件?

关于rdlc - 如何 : Change Image visibility on rdlc export,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/330224/

相关文章:

.net - 在 VB.Net 中手动在 Reportviewer 中加载 .rdlc 报告

c# - 将参数从文本框传递到 RDLC 报告

c# - 在 RDLC 中添加多个表

c# - 从 rdlc xml 字符串生成报告

c# - 在 RDLC 中将金额转换为单词

RDLC:在不使用子报表的情况下显示子集合数据

asp.net - ReportViewer 2010 未从代码加载数据源

c# - RDLC 中的动态列

vb.net - rdlc CountDistinct 其中状态 = 1

c# - 表中列值的总和 - Rdlc 报告