試圖獲得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來完成。它只爲您提供只有與一些預定義的選項與有趣的角落案例很小的可擴展性。你想要做的是有效地實現你的價值,那種既不是由綁定也不是由格式直接支持,因爲這是算術運算。
P /%實際上也是* = 100的事實可能只是一個巧合。如果在3天內你有另一個需要「移動」不同位數的地方,你可以破解它跳過%,但它根本無法幫到你。
解決方法是...將顯示的值乘以100.您不需要更改源值 - 這只是強制UI讀取與源值不同的值的問題。
兩個最簡單的方法是:
- 您可以在視圖模型,只需露出一個新的屬性,即
ClosingRateFormatted
做到這一點,這將是隻讀的,並且將返回ClosingRate * 100(只記得大約通知有關更改爲屬性現在) - 您可以使用IValueConverter並像平常一樣綁定到ClosingRate。轉換器有兩種方法,Convert和ConvertBack,你可以在一箇中執行* = 100,在另一箇中執行/ = 100(如果需要的話),這會改變傳遞給UI的值,但是源代碼不會注意。
使用Converter時,無需更改通知(與第一個選項相反),但使用轉換器肯定比創建新的只讀屬性更難一些。
相關問題
- 1. 小數位的XAML StringFormat語法
- 2. 百分比位置移動
- 3. StringFormat中的百分比
- 4. SSIS將百分比轉換爲小數
- 5. C#Excel百分比轉換爲小數
- 6. WPF XAML StringFormat。轉義%
- 7. CSS百分比中的小數位
- 8. 添加小數百分比
- 9. wkhtmltopdf小數百分比
- 10. 百分比和小數
- 11. 在Spark Dataframe上移動百分位數
- 12. HTML5號輸入 - 顯示爲百分比,而不是小數
- 13. 格式化百分比值的小數?
- 14. SSRS - 連接值的小數位數爲1的格式百分比
- 15. 如何將NSString數字轉換爲3位數百分比值?
- 16. 轉換數字結果百分比小數位數
- 17. 使用XAML的StringFormat得到小數點後一位
- 18. 將數組轉換爲百分位數
- 19. AS3位圖數據百分比比較
- 20. (AngularJS)爲每個不同的百分比動態計算小計
- 21. 如何將數字格式化爲不帶百分比符號的百分比?
- 22. XAML中的StringFormat
- 23. 百分比爲highcharts
- 24. 將整數轉換爲百分比
- 25. PHP:將數字轉換爲百分比
- 26. 身高百分比數學javascript爲iframe
- 27. 使用NSNumberFormatter格式化NSNumber作爲百分比(%)與一位小數使用NSNumberFormatter
- 28. AmCharts - 多個數據集 - 不作爲百分比比較值
- 29. 將int轉換爲百分比或小數
- 30. 使用Sass,如何將百分比轉換爲小數?
你可以使用一個轉換器 – Ben