答静静:动态更改水晶报表部分数据的背景颜色(VB.Net)

环境:
VB.Net2003
水晶报表10高级开发版本
示例数据库文件,安装水晶报表时自带的xtreme.mdb

如何设定指定记录的背景颜色(如:产品表中记录大于50的背景颜色),请在此处下载操作录像
https://files.cnblogs.com/babyt/CRMOV20050802_1.rar

下面来做一下如何使用程序来控制这个指定记录的范围
首先我们要改造一下我们的模板文件

Step1: 增加一个参数cond


Step2: 修改节专家==>详细资料节==>颜色标签==>更改颜色后面开的公式
将原来的具体数值,使用参数进行代替


Step3:构造一个工程,这里使用了动态加载报表模板的方式

主要代码如下

 Private Sub Form1_Load(ByVal sender As System.ObjectByVal e As System.EventArgs) Handles MyBase.Load
        
'加载报表
        oReport.FileName = Application.StartupPath & "\dyncolor.rpt"
        CrystalReportViewer1.ReportSource = oReport
    
End Sub




    
Private Sub Button1_Click(ByVal sender As System.ObjectByVal e As System.EventArgs) Handles Button1.Click

        
'离散值 
        Dim DiscreteVal = New ParameterDiscreteValue
        DiscreteVal.Value 
= CLng((TextBox1.Text))
        
'禁止弹出提示窗口
        CrystalReportViewer1.ParameterFieldInfo(0).AllowCustomValues = False
        
'赋值
        CrystalReportViewer1.ParameterFieldInfo(0).CurrentValues.Add(DiscreteVal)
        CrystalReportViewer1.ReportSource 
= oReport
        CrystalReportViewer1.Refresh()
    
End Sub

因为是测试,我没有进行错误和异常处理
请在此处下载完整代码,
不过因为我使用的是水晶报表10,如果你运行不起来,也没关系,只要把代码看懂就行了
https://files.cnblogs.com/babyt/DynColor.rar

==========================
阿泰  20050809

posted @ 2005-08-09 11:40  阿泰  阅读(4844)  评论(15编辑  收藏  举报