我曾经只在rdlc表达式值中使用过两个可能的值,就像这样:
=iif((Fields!Gender.Value="1"),"Male","Female")
这里我只能处理两个可能性。但如果我想检查三个或更多的条件,该怎么办?
我曾经只在rdlc表达式值中使用过两个可能的值,就像这样:
=iif((Fields!Gender.Value="1"),"Male","Female")
这里我只能处理两个可能性。但如果我想检查三个或更多的条件,该怎么办?
如果你有更多条件, 使用Switch语句会更易读。
=Switch(
Fields!Gender.Value = 1, "Male",
Fields!Gender.Value = 2, "Female"
)
Code
属性。在报表外的空白处单击右键,然后单击 报表属性
或单击报表菜单并单击报表属性。
单击“代码”选项卡,并输入以下条件检查语句:
Public Function GetGender(ByVal val as String) As String
Dim retVal as String = ""
If(val = "1")
retVal = "Male"
Else If (val = "2")
retVal = "???"
Else If (val = "3")
retVal = "???"
Else
retVal = "???"
End If
Return retVal
End Function
= Code.GetGender(Fields!Gender.Value)
IIf
吗?那样虽然难以调试,但也很有用。 - codingbiz尝试这个:
=iif(Fields!Gender.Value="1","Male", iif(Fields!Gender.Value="2","Female","Undefined"))
格式如下:
=iif(expression=value, true, false)
您可以使用以下方式进行更改:
=iif(expression=value, true, iif(expression2=value2, true, false))
Switch和自定义代码看起来很不错,谢谢你们。
但是如果你坚持使用iif()条件语句,则:
=iif( (Fields!Gender.Value="1"), "Male", iif( (Fields!Gender.Value="2"), "Female", "Something Else" ) )
好的,再见