我想将一个整数格式化为百分比,而不会像这里所示那样乘以100。因为我的数据源是整数,所以首先除以100并不是一个有效的选项。这是否可能?
[DisplayFormat(DataFormatString = "{0:#%}")]
我想将一个整数格式化为百分比,而不会像这里所示那样乘以100。因为我的数据源是整数,所以首先除以100并不是一个有效的选项。这是否可能?
[DisplayFormat(DataFormatString = "{0:#%}")]
%
字符:[DisplayFormat(DataFormatString = @"{0:#\%}")]
请注意,使用反斜杠作为转义字符有两种方法:如果你在字符串文字前加上verbatim 符号 (@),那么 \ 字符将按原样包含在字符串中,这意味着在格式字符串的一部分中,一个单独的 \ 将作为转义字符起作用。@"{0:#\%}" -> right
"{0:#\\%}" -> right
@"{0:#\\%}" -> wrong
将%放在{0:..}的外面
[DisplayFormat(DataFormatString = "{0:0.00}%")]
ToString()
这样的方法不允许使用 { }
表达式,而你只能在上述解决方案中提供在 {0:
和 }
之间的格式部分。不过像 String.Format()
这样的方法则可以使用。 - Martin Braun从您的链接页面:
转义字符
使下一个字符被解释为字面量,而不是自定义格式说明符。
[DisplayFormat(DataFormatString = "{0:#\\%}")]
如果值为0,则格式@"{0:#%}"将只显示%。 它应该显示0%。因此,正确的格式是
[DisplayFormat(DataFormatString = @"{0:#0\%}")]
哈希后面多了一个零。
[DisplayFormat(DataFormatString = @"{0:#0.##\%}")]
,我自己解决了问题。 - Mahesh Kudikala