Ce que je veux, c'est quelque chose comme ça:
String.Format("Value: {0:%%}.", 0.8526)
Où %% est ce fournisseur de format ou tout ce que je recherche. Devrait se traduire par : Value: %85.26.
.
J'en ai essentiellement besoin pour la liaison wpf, mais d'abord, résolvons le problème général de formatage:
<TextBlock Text="{Binding Percent, StringFormat=%%}" />
c#
decimal
string.format
formatprovider
Shimmy Weitzhandler
la source
la source
P
formatage indépendant de la culture ?Si vous avez une bonne raison de mettre de côté le formatage dépendant de la culture et d'obtenir un contrôle explicite sur la présence ou non d'un espace entre la valeur et le "%", et si le "%" est en tête ou en fin, vous pouvez utiliser PercentPositivePattern de NumberFormatInfo et Propriétés PercentNegativePattern .
Par exemple, pour obtenir une valeur décimale avec un "%" de fin et aucun espace entre la valeur et le "%":
Exemple plus complet:
la source
Si vous souhaitez utiliser un format qui vous permet de conserver le nombre comme votre entrée, ce format fonctionne pour moi:
"# \\%"
la source
Ce code peut vous aider:
la source
J'ai trouvé que la réponse ci-dessus était la meilleure solution, mais je n'aime pas l'espace devant le signe de pourcentage. J'ai vu des solutions quelque peu compliquées, mais j'utilise simplement cet ajout Remplacer à la réponse ci-dessus au lieu d'utiliser d'autres solutions d'arrondi.
la source