带+和 - 符号的格式编号

Mic*_*len 5 wpf formatting binding integer string-formatting

我在堆栈面板中有一些WPF文本块,我想要数据绑定和格式化.

例如,以下格式为没有秒部分的日期24h样式:

<TextBlock Text="{Binding MyCustomObject, StringFormat={}{0:HH:mm}}" />
Run Code Online (Sandbox Code Playgroud)

现在,我想绑定一个整数,并显示+和 - 符号(即+6或-4).

<TextBlock Text="{Binding MyOtherCustomObject, StringFormat={}{0:+#}}" />
Run Code Online (Sandbox Code Playgroud)

但是,这不起作用.这是可能的还是我必须为此编写完整的转换器?

编辑

尼古拉斯的帖子让我得到了答案:

<TextBlock Text="{Binding MyOtherCustomObject, StringFormat={}{0:+#;-#;''}}" />
Run Code Online (Sandbox Code Playgroud)

实质上,您提供了正数,负数和可选部分的格式,如何处理零.在这种情况下,我声明零应显示为空字符串.

问候,

米歇尔

Nik*_*lay 10

试试这个:

<TextBlock Text="{Binding MyOtherCustomObject, StringFormat={}{0:+#;-#;''}}" />
Run Code Online (Sandbox Code Playgroud)

这篇文章有很好的int格式样本 - http://www.csharp-examples.net/string-format-int/

  • 是的,这是一个很好的链接,这导致:{Binding MyOtherCustomObject,StringFormat = {} {0:+#; - #;''}} (2认同)