如何在 report.rdlc 中呈现格式化文本(及其格式)

Posted

技术标签:

【中文标题】如何在 report.rdlc 中呈现格式化文本(及其格式)【英文标题】:How to render the formated text in the report.rdlc (with its format) 【发布时间】:2013-05-14 03:31:05 【问题描述】:

我以格式化的方式将我的数据存储在我的数据库中, 我想要某种方式在我的report.rdlc 中以它的格式呈现文本我使用 Visual Studio 2008 如何做到这一点:


例如:

如果我的文字是这样的:

<p>text</p>

它与我的报告文本框中的标签相同!!。而不是呈现为段落。


当我这样绑定时:

= Fields.subject

如何解决这个问题?


【问题讨论】:

【参考方案1】:

编辑

在进一步研究了这个问题之后,Visual Studio 似乎在 Visual Studio 2010 之前不支持将 rdlc 报告的标记为 html。因此,如果可以选择升级,那么您可以做任何您想做的事情。

否则你总是可以像这样去掉 HTML 标签:

Report 菜单上,单击Report Properties... 并选择Code 选项卡。输入以下代码:

Function StripHTMLTags(ByVal text as String) AS String
  Return System.Text.RegularExpressions.Regex.Replace(text, "<(.|\n)*?>", "")
End Function

现在在您的单元格中使用以下表达式:

=Code.StripHTMLTags(Fields!MyField.Value)

原答案如下:

撇开你应该将数据与演示文稿分开,你可以在 Reporting Services 中使用 HTML 标记进行呈现,只是查找起来不是很直观:

    左键单击要显示的字段,以便突出显示 &lt;Expr&gt; 标记 右键单击突出显示的&lt;Expr&gt; 标签并选择Placeholder Properties...General 选项卡上,选择HTML- Interpret HTML tags as style 单选按钮

但仅支持有限数量的标签。 This article on MSDN 告诉你更多。

截图:

【讨论】:

@just_name 检查更新的答案,我添加了一些截图。 @just_name 好的,我应该从那开始。您必须做的是创建一个Text Box(插入-> 文本框),然后在其中插入您的字段,当您右键单击所选内容时,您将能够看到Placeholder Properties。希望它有效 @just_name 好的,我会的。在 6 小时内,我将能够这样做,并将结果与​​您联系。 @just_name 你看到文本属性了吗?有这样的吗? 在 VS2010 之前,Visual Studio 似乎不支持 RDLC 报告的 HTML 标记。答案已更新。【参考方案2】:
    在字段区域双击 在占位符属性中选择常规 > HTML - 将 HTML 标记解释为样式

【讨论】:

以上是关于如何在 report.rdlc 中呈现格式化文本(及其格式)的主要内容,如果未能解决你的问题,请参考以下文章

VB.NET ReportViewer 动态绑RDLC

RDLC 实现柱形图

将 DataTable 绑定到 RDLC 和 ReportViewer

内容丰富的文本未呈现

C#winform初试报表

如何在报表查看器中添加参数?