自定义.ToString().rdlc报告中的格式

时间:2010-03-02 09:49:14

标签: .net vb.net rdlc tostring

我有一个自定义业务对象,它会重载.ToString()函数。它还实现了IFormattable.ToString,因此我可以定义自己的自定义格式。

除了.rdlc报告外,这种方法似乎在我的应用程序中无处不在。例如,我在报表上有一个文本字段,其中包含以下表达式:

=Fields!MyField.Value.ToString("lr")

“lr”是我创建的自定义格式。运行报告时,我总是将#Error作为输出。我在.ToString函数中放置断点并在报告运行时逐步执行代码,我知道函数返回正确的值,但报告似乎无法接收和显示它。 / p>

1 个答案:

答案 0 :(得分:1)

可以在rdlc报告中以不同的方式使用VB代码。只需用鼠标右键单击报告即可。当您输入参数的上下文菜单转到Proprties时。单击它时,您应该看到一个选项卡控件,几页标签页。转到标签页“代码”你正确的VB函数必须是这样的

 Public Function ParseVal(ByVal val As Object ) As String
     Dim MyClass As obj = CType(val, MyClass )
     return obj.ToString( "lr" ) 
    End Function

然后像这样调用文本框中的函数

= Code.ParseVal(Fields!MyField.Value )

P.S。我不太确定VB代码是否正常工作只是测试它,如果需要重写。如果发生任何其他错误,请发布它以查看问题是什么