我正在尝试在Reporting Services表达式中找出Format(Expression as Object,Style as String)函数的样式字符串。
我找不到记录这些样式格式字符串的位置!
具体来说,我试图将Price字段格式化为总是2位小数。
即1.5格式到1.50美元
答案 0 :(得分:37)
使用货币格式字符串格式
=Format(Fields!Price.Value, "C")
它会给你2个小数位,前缀为“$”。
您可以在MSDN上找到其他格式字符串:Adding Style and Formatting to a ReportViewer Report
注意 :MSDN文章已存档到“VS2005_General”文档,该文档不再可在线直接访问。以下是引用的格式化字符串的摘录:
格式化数字
下表列出了常见的.NET Framework编号格式 字符串。
格式化字符串,名称
C或c货币
D或d十进制
E或e Scientific
F或f定点
G或g General
N或n数字
P或p百分比
R或r往返
X或x十六进制
您可以修改许多格式字符串以包含精度 说明符,用于定义
右侧的位数小数点。例如,格式化字符串D0格式化 编号,使小数点后没有数字。你
也可以使用自定义格式字符串,例如#,###。
格式化日期
下表列出了常见的.NET Framework日期格式 字符串。
格式化字符串,名称
d短日期
D长日期
t短时间
很长时间
f完整日期/时间(短时间)
F完整日期/时间(长时间)
g一般日期/时间(短时间)
G一般日期/时间(长时间)
M或m月日
R或r RFC1123模式
Y或y年月
您还可以使用自定义格式字符串;例如,dd / MM / yy。 有关.NET Framework的更多信息 格式化字符串,请参阅格式化类型。
答案 1 :(得分:34)
如上所述,您可以使用:
=Format(Fields!Price.Value, "C")
“C”后面的数字将指定精度:
=Format(Fields!Price.Value, "C0")
=Format(Fields!Price.Value, "C1")
你也可以像这样使用Excel-style masks:
=Format(Fields!Price.Value, "#,##0.00")
没有测试过最后一个,但有想法。也适用于日期:
=Format(Fields!Date.Value, "yyyy-MM-dd")
答案 2 :(得分:1)
您可以查看架构 http://schemas.microsoft.com/sqlserver/reporting/2005/01/reportdefinition/ReportDefinition.xsd
搜索xsd:complexType name =“StyleType”
这将列出您可以使用的所有可能的样式。
具体到您的问题,您可以使用格式样式。
格式
Specify the data format to use for values that appear in the textbox.
有效值包括Default,Number, 日期,时间,百分比和货币。
MSDN链接:http://msdn.microsoft.com/en-us/library/ms251684(VS.80).aspx
答案 3 :(得分:1)
为值的属性提供C2的格式字符串值,如下图所示。
答案 4 :(得分:1)
答案 5 :(得分:0)
答案 6 :(得分:0)
此链接包含您自定义格式所需的参考 https://msdn.microsoft.com/en-us/library/0c899ak8.aspx