nutro una casella di testo un valore stringa mi mostra un equilibrio che deve essere formattata in questo modo:Formattare un doppio valore come moneta, ma senza il segno di valuta (C#)
###,###,###,##0.00
ho potuto utilizzare il value.ToString ("c"), ma questo metterebbe il segno di valuta di fronte ad esso.
Qualsiasi idea di come avrei manipolare la stringa prima di alimentare la casella di testo per ottenere la formattazione di cui sopra?
ho provato questo, ma senza successo:
String.Format("###,###,###,##0.00", currentBalance);
Molte grazie,
Questo non è accettabile perché se il simbolo negativo per la valuta nella cultura è() e il simbolo negativo per i decimali è -, la rappresentazione della valuta sarà errata. –
@Bob: questo è accettato la risposta è quindi, per definizione, accettabile per l'OP. Poiché non esiste un identificatore di formato incorporato per "formato come una valuta ma senza il simbolo di valuta", in quella situazione sarebbe necessaria una sorta di elaborazione manuale: o * (1) * usa un 'NumberFormatInfo' personalizzato come per la risposta di Jon, * (2) * usa una stringa di formato personalizzata, o * (3) * chiama' ToString ("c") 'e poi post-process per rimuovere il simbolo. – LukeH
@ Luca: Sebbene questa sia la risposta accettata la risposta che Jon Skeet dà è più corretta nel senso che usa le formattazioni Valuta fornite da NumberFormatInfo. –