Cómo mostrar un valor con coma en una etiqueta – Xamarin
Tengo:
<Label Grid.Row="2" Grid.Column="0" Grid.ColumnSpan="2" Text="{Binding Price, StringFormat='{0:F0} $'}" XAlign="Center" YAlign="Center" TextColor="#2bff00" FontAttributes="Bold" FontSize="Small" HorizontalOptions="CenterAndExpand"/>
Pero mi propiedad del objeto es:
JsonProperty("price_usd")]
public decimal? Precio { get; set; }
Entonces, el valor real es: "price_usd":"3824.56"
y mi etiqueta muestra 3824 sin la coma?
davy.ai
El problema con la etiqueta que muestra 3824 sin una coma se debe al atributo
StringFormat="{0:F0} $"
en la etiqueta. Esta cadena de formato especifica que el valor debe ser formateado sin decimales y con un símbolo de moneda.Para incluir la coma en la etiqueta, puedes modificar la cadena de formato para incluir un separador de miles. Una forma de hacer esto es usar el especificador de formato “N”, que formatea el número con el separador de miles predeterminado para la cultura actual. Por ejemplo, puedes reemplazar el atributo
StringFormat="{0:F0} $"
porStringFormat="{0:N0} $"
para mostrar el valor con un separador de coma.Alternativamente, si deseas especificar una cultura específica para el formato, puedes usar el método
String.Format
para formatear la cadena y especificar la cultura. Por ejemplo, puedes usarString.Format(CultureInfo.InvariantCulture, "{0:N0} $", Price)
para formatear el valor con la cultura invariante (que utiliza una coma como separador para los miles).