2012-07-31 4 views
6

Potrzebuję formatować liczby (używając konwerterów WPF), a jedyny sposób, w jaki mogę to zrobić, to przez string.Format.Formatowanie ciągów: skala i precyzja od String.Format

Mam dwa parametry formatowania: skalę i precyzję: . mogę osiągnąć to, co muszę osobno, ale to nie działa z obu:

Przykład (które działa):

string.Format("{0:#,##0,,}", 1234567890.123m) == "1,235" 
string.Format("{0:#,#.000}", 1234567890.123m) == "1,234,567,890.123" 

Co potrzebne:

string.Format("????", 1234567890.123m) == "1,234.568" 

(co oznaczałoby 1 234 568 milionów) Jak widać, nie mogę znaleźć wzorca formatu, który skalowałby się i wyświetlał dziesiętne .

Każdy pomysł?

Odpowiedz

8

kolega dostał rozwiązanie:

string.Format("{0:#,##0,,.000}", 1234567890.123m) == "1,234.568" 
+1

działa jak urok ... +1 –

-2

Nie sądzę, że format ciągu zrobi to za Ciebie. Będziesz musiał podzielić to na własną rękę.

+0

To właśnie bałem. Dzięki! Poczekam trochę, jeśli ktoś inny dostanie odpowiedź, a ja przyjmuję twoją odpowiedź. –