当值包含“ x”时,我试图在表达式中使多个值“加粗”。 HTML占位符属性无法满足我的需要,并且由于表达式中包含多个语句,因此我正在努力使其与以下内容一起使用:
=(IIF(Fields!Test1.Value =“ x”,“ Bold”,“ Normal”)OR(Fields!Test2.Value =“ x”,“ Bold”,“ Normal”)等等等
我想我需要创建一个自定义代码函数,然后在表达式中需要的地方调用该函数,但是我不知道从哪里开始!任何帮助将不胜感激。
更新:
开关有效,但粗体显示整个表达式,而不仅仅是表达式的占位符属性中指定的值。
虽然应该根据规则的复杂程度来考虑SWITCH
,但不需要自定义代码。
根据您的简单示例,您可以执行以下任一操作
=IIF(
Fields!Test1.Value = "x" OR Fields!Test2.Value = "x",
"Bold",
Nothing)
或更复杂的情况
= SWITCH (
Fields!Test1l.Value = "x" OR Fields!Test2.Value="x", "Bold",
Feilds!Test3.Value = "Z" AND Fields!Test4.Value >10, "SemiBold",
True, Nothing)
SWITCH
评估每个表达式/结果对,并在达到第一个评估为True
的表达式/结果对时停止。最后的“ True,Nothing”的行为与别的类似。 SWITCH
如果比嵌套的IIF
更容易阅读,但如果规则简单,则IIF
会更简单。