Tengo un pequeño problema con el formato actual de mi número de moneda negativo. Aquí hay una captura de pantalla que resume mi situación.Número de moneda negativa XAML
- Así es como estoy usando StringFormat en mi encuadernación. (Por cierto, yo sólo probamos {0: C})
- Como era de esperar
- La configuración actual de mi equipo para la moneda número negativo 4.
- El resultado cuando estoy corriendo mi solicitud
¿Por qué el resultado no es -0,08 $?
¿Alguna idea de cómo debo proceder?
Gracias por su tiempo.
ACTUALIZACIÓN:
traté de resolver el problema con un convertidor, aquí está el resultado:
- encontré que el
Thread.CurrentThread.CurrentUICulture
no era el mismo que elThread.CurrentThread.CurrentCulture
, por lo que me fijo en mi App.xaml.cs. Lamentablemente, el mismo resultado. - Intenté mostrar mis valores a través de un convertidor para ver si podía solucionar el problema. El hecho es que la cultura recibida en los parámetros del método
Convert
estaba bien, pero suCurrentNegativePattern
no era el mismo que en elThread.CurrentThread.CurrentCulture
. Esa es probablemente la razón por la que tengo este problema. por el momento, usaré esto:return ((double)value).ToString("C2", Thread.CurrentThread.CurrentCulture);
en el métodoConvert
de mi convertidor.
+1 - No estoy seguro tampoco, probablemente de alguna manera relacionado con el cultivo utilizado. Tal vez una forma de especificar eso en el XAML? http://shujaatsiddiqi.blogspot.com/2010/08/wpf-localization-stringformat-for.html muestra cómo forzar la cultura actual en el constructor para la ventana - tal vez dar una oportunidad para la depuración. –
+1 para anular el 'LanguageProperty'; no lo sabía –
@Merlyn Morgan-Graham: Desafortunadamente, esto no es exactamente lo que estaba buscando. Pero gracias por el consejo ! – esylvestre