2010-12-15 2 views
0

Я разрабатываю панель администрирования электронной коммерции в WPF. Я хотел бы отображать валютные значения в PLN (Polish Złoty). Формат {0: C} дает результат в USD ($ 1.000). Есть ли способ изменить это поведение или мне нужно написать свой собственный формат для этого?String.Format, Currency, Polish Złoty

Редактировать: Почему это так, если моя информация и местоположение в области культуры установлены на польский/Польский?

ответ

4

Попробуйте передать CultureInfo в свой строковый формат.

string money = String.Format(CultureInfo.GetCultureInfo("pl"), "{0:C}", 30.7m); 
Console.WriteLine(money); 

EDIT: если вы в WPF, то это следует сделать трюк:

this.Language = XmlLanguage.GetLanguage("pl"); 

или

FrameworkElement.LanguageProperty.OverrideMetadata(typeof(FrameworkElement), new FrameworkPropertyMetadata(XmlLanguage.GetLanguage("pl"))); 
+0

Если бы я использовал String.Format, что будет легко, но мой код выглядит так: Код, очевидно, XAML, поэтому я спрашиваю о WPF, а не C#. – kubal5003 2010-12-15 16:52:45