在上篇博客当中,我们了解了富文本框控件中如何展示静态的html 代码,但html代码是来自于数据字段,并因为在数据存储到数据库中时,无法直接存储纯的html代码往往需要做一些格式转义,再进行存储,所以在我们获取到数据字段中,如何根据一定的存储方法逆向获得html代码,并在富文本框控件中展示呢?

本文主要讲解了,如何ActiveReports实现特殊格式的展示,并将脚本与富文本控件结合使用。

实现操作:

1、 新建 RDL 报表或页面报表

2、 添加 富文本框 控件到设计界面或嵌入表格单元格中

富文本框嵌入单元格

3、 添加脚本

脚本函数主要用于对存储的方式进行转义还原成标准的HTML 代码,代码如下:

Dim sb As New System.Text.StringBuilder
    Dim sb1 As String = state.Substring(0, 1)
    sb.Append("<body style=""font-family:微软雅黑"">" & sb1)

    Dim i As Integer
    For i = 1 To state.Length - 1
        Dim c As String = state.Substring(i, 1)
        If c = "~"  Then            

            Dim cNext As String = state.Substring(i + 1, 1)
            sb.Append("<sup>" & cnext & "</sup>")
            i = i + 1
        Else If c = "_" Then

            Dim cNext As String = state.Substring(i + 1, 1)
            sb.Append("<sub>" & cnext & "</sub>")
            i = i + 1    

        Else
            sb.Append(c)
        End If
    Next
    sb.Append("</body>")
    Return sb.ToString()
    End Function

4、 设置富文本框控件的 HTML 属性 在HTML属性中设置调用脚本

    =GetHTML(Fields!技术要求.Value)

5、 预览

这样会将数据字段转换为专用的html代码

预览