我正在处理一些报告中与format属性的硬代码值有关的问题。不,我正在尝试根据客户的文化代码创建自定义格式。我的代码的问题是我的新格式(用于es CL和en-US文化)不起作用,如果en-US的千元分隔符是和,那么它应该是正确的掩码。对于es Cl?谢谢
Public Shared Function GetTextMortNumberFormat(culture) As String
Select Case culture
Case "nb-NO"
Return "# ### ###;-# ### ###;''"
Case "es-CL"
Return "#.###.###;-#.###.###;''"
Case "en-US"
Return "#,###,###;-#,###,###;''"
Case Else
Return "# ### ###;-# ### ###;''"
End Select
End Function
您应该只使用用户的国际化设置。对于报表本身的Language属性,请使用:
=User!Language
现在,您可以使用以下格式,这些格式将使用用户的区域语言设置来适当地格式化数字:
- N2=小数点后2位的数字
- N0=无小数位数
- P0=无小数点的百分比
- d=短日期格式
您可以在这里看到其他格式的字符串
逗号将始终尝试替换区域设置的千位分隔符,句点将固定在小数位置并替换区域设置中的小数分隔符。http://msdn.microsoft.com/en-us/library/0c899ak8.aspx
只需在ssrs报告中使用一点.net:format数字,就可以在区域设置中硬编码