0

Microsoft Report Designer有没有人在表达式值中使用 LineThrough 文本?例子:

=Switch(Fields!a.Value is Nothing, "text here".LineThrough, Not(Fields!a.Value is Nothing), CStr(Fields!a.Value))

a.Value如果是,我需要将“此处的文字”删除nothing

4

2 回答 2

1

您可以在所选报告项的字体/文本装饰上设置条件。LineThrough 有一个选项。

例如

=iif(reportitems!Textbox7.Value = "Cartons","LineThrough","Default")
于 2017-10-24T22:08:23.830 回答
1

您需要使用表达式来显示您想要的值,然后使用 Harry 的答案来设置 LineThrough。

您可以为这样的值简化您的SWITCH陈述..

=SWITCH(
    Fields!a.Value Is Nothing, "Text Here",
    True, Fields!a.Value)

或者如果表达式不会变得比你更复杂,那么使用IIF

=IIF(Fields!a.Value Is Nothing, "Text Here", Fields!a.Value)

如果您只需要文本框的一部分,那么最简单的方法是使用占位符。它们的作用几乎与文本框相同,但您可以在一个单元格/文本框中有多个占位符,每个占位符都有自己的属性。

要添加占位符,请先单击单元格/文本框以获取焦点,然后在任何现有文本/占位符之前或之后右键单击。根据需要选择Insert placeholder并设置表达式,您还可以格式化占位符字体/颜色/装饰等。

例如,我有一个带有国家名称的小数据集。如果该国家/地区包含“岛屿”一词,那么我会显示不同的文本并更改其中一个占位符上的文本装饰。在设计中,您可以看到有 3 个占位符,一些文本,然后是一个字段,然后是更多文本。

在此处输入图像描述

当我运行它时,我得到以下输出。 在此处输入图像描述

我在 countrydesc 字段占位符上设置了删除线,但您可以在文本占位符上执行相同操作。您仍然需要分两部分进行操作,表达式设置文本值和占位符字体属性中的表达式设置 LineThrough

于 2017-10-24T23:18:57.617 回答