2009-03-28 10 views
9

StringFormatを使用すると、正の数値の前に+記号が表示されますか?例えばStringFormatを使用して '+'記号を強制的に表示するには

<TextBlock Text="{Binding Path=PercentAgainstBudget, 
          StringFormat={}{0:0.00}%}" /> 

PercentAgainstBudgetが負の場合、私は-看板を参照してください。しかし、その肯定的な場合、それはしません。この数字はオフセットであるので、私は+/-を強制的に表示したいと思います。私はValueConverterを作ることができましたが、StringFormatのプロパティでそれを行う方法があるのだろうかと思います。

答えて

23

フォーマット文字列は、セミコロンで区切られた2つの部分で構成できます。最初の部分は正の数の形式で、負の数は2番目の形式です。 + 0.0%; - 0.0%

PS C:\Users\jachymko> '{0:+0.0%;-0.0%}' -f 2.45 
+245,0% 
PS C:\Users\jachymko> '{0:+0.0%;-0.0%}' -f -2.45 
-245,0% 
関連する問題