有条件地设置文本框填写RDLC

时间:2015-09-14 15:10:34

标签: c# asp.net rdlc

我将多行的数据源传递给rdlc。当我将它绑定到网格时,有一些名为AcknowledgeBy和AcknowledgedOn的列。如果AcknowledgedOn日期大于AcknowledgeBy日期,或者如果它为空,我想突出显示红色单元格。我将以下表达式添加到"填充"文本框的属性。

当我使用此代码时,它会突出显示任何大于正确确认日期的日期

=Iif(Fields!AcknowledgedOn.Value > Fields!AcknowledgeBy.Value, "#ff9e9e", "Transparent")

但是如果我在false语句中添加第二个Iif,它将不再突出显示更大的那些但是它会突出显示空结果。

=Iif(Fields!AcknowledgedOn.Value > Fields!AcknowledgeBy.Value, "#ff9e9e", Iif(Fields!AcknowledgedOn.Value = "", "#ff9e9e", "Transparent"))

有人可以指出我的问题是什么吗?

2 个答案:

答案 0 :(得分:0)

我不确定为什么我不能使用=运算符但我能够使用“赞”使其工作。 Like运算符用于比较两个字符串。

=IIf(Fields!AcknowledgedOn.Value > Fields!AcknowledgeBy.Value Or Fields!AcknowledgedOn.Value Like "", "#ff9e9e", "Transparent")

答案 1 :(得分:0)

您可以使用IsNothing

=IIf(Fields!AcknowledgedOn.Value > Fields!AcknowledgeBy.Value Or IsNothing(Fields!AcknowledgedOn.Value), "#ff9e9e", "Transparent")