0.1500を15.00として表示しようとしています。私のC#プロパティは小数で、私のxamlコードは<TextBox Text="{Binding ClosingRate, StringFormat={}{0:P2}}"/>
です。小数点を2桁右に移動したい場合は、小数点の値を変更したり先頭に0を付けたりしないでください。 "P2" 20.00%、私はパーセント記号が欲しくない。WPF Xaml StringFormatは%の小数点以下桁数を移動しますが、%はありません。
0
A
答えて
2
単純なStringFormatではできません。それはあなたにといくつかの事前定義されたオプションを提供し、興味深いコーナーケースではほとんど拡張性がありません。あなたがしたいことは事実上*=100
あなたの価値であり、その種類は算術演算であるのでバインディングとフォーマットのどちらでも直接サポートされません。
実際にP /%も* = 100となっているという事実は、たぶん偶然の一致です。あなたは%を飛ばすためにそれをハックすることができますが、それはあなたが別の桁数でそれを "移動"する必要がある別の場所を持っている場合、3日間であなたを助けません。
解決策は、表示された値に100を掛けることです。ソース値を変更する必要はありません。UIにソース値とは異なる値を読み取らせるだけです。
二つの最も簡単な方法がある:ちょうど約通知について覚え読み取り専用になり、それがClosingRate * 100(返されます
- あなたはどちらかのViewModelで、単に
ClosingRateFormatted
すなわち新しいプロパティを暴露することによってそれを行うことができますの両方に変更するプロパティ) - IValueConverterを使用して通常どおりClosingRateにバインドすることができます。 ConverterにはConvertとConvertBackという2つのメソッドがあり、1つは* = 100、もう1つは(必要な場合は)/ 100にすることができます。これはUIに渡される値を変更しますが、通知。
変更通知(最初のオプションとは異なります)では変更は必要ありませんが、コンバーターを使用することは新しい読み込みプロパティを作成するよりもはるかに困難です。
関連する問題
- 1. 小数点以下2桁の小数点以下2桁の小数点以下の桁数
- 2. 小数点以下2桁の小数点以下を切り捨てます
- 3. 小数点以下を小数点以下の桁数に変換します。
- 4. NumberFormatは小数点以下340桁を好きではありません
- 5. 浮動小数点数を小数点以下2桁までフォーマットします。
- 6. prestashopの小数点以下の桁数が動作しません。
- 7. 年次給与&小数点以下2桁の小数点以下の桁数を返します。
- 8. 数値コンバータは小数点以下の桁を変換していません
- 9. 小数点以下2桁の浮動小数点数と小数点以下6桁の同じ浮動小数点数を比較する
- 10. Json.NETは浮動小数点数/小数点を最小小数点以下でシリアル化します。つまり、冗長な ".0"はありませんか?
- 11. 小数点以下桁上げは期待通りに機能しません
- 12. 小数点以下の桁はどうなりますか?
- 13. 数値パイプ0または2小数点以下の桁数
- 14. エキスは、小数点以下2桁
- 15. BigDecimalのフォーマットには、小数点以下2桁が常にありますか?
- 16. 浮動小数点数を小数点以下の桁数に拡張する
- 17. bigdecimalと小数点以下の桁数
- 18. 小数点以下の桁数
- 19. 小数点以下の桁数
- 20. 浮動小数点の小数点以下2桁までの出力
- 21. 浮動小数点/小数点から小数点以下3桁までを正確に丸めますか?
- 22. Yii2通貨フォーマッタが、私は小数点以下4桁の分数を設定したい小数点以下
- 23. 浮動小数点型の列の小数点以下の桁数はどのように数えますか?
- 24. MVC TextBoxForの小数点以下の桁数が小数点以下で拡大されます
- 25. 浮動小数点数を小数点以下2桁に変換する
- 26. 小数点以下桁数の問題がある
- 27. 小数点以下の桁数の場合は、小数点以下2桁までの数値を設定します。
- 28. ユーザが入力した浮動小数点の小数点以下の桁数をカウントするには?
- 29. ワードプレス - 小数点以下2桁で平均を割ります
- 30. 小数点以下の桁のリスト
コンバーターを使用できます – Ben