0

アプリケーションで通貨を表示する方法を変更したいと考えています。

私の Window のコンストラクターには、次のコードがあります。

CultureInfo cultureInfo = new CultureInfo("en-US");
cultureInfo.NumberFormat = new NumberFormatInfo { 
    CurrencyDecimalSeparator = ",", 
    CurrencySymbol="§"};
Thread.CurrentThread.CurrentCulture = cultureInfo;
Thread.CurrentThread.CurrentUICulture = cultureInfo;

XAML は次のとおりです。

<TextBox Text="{Binding Path=CurrencyValue, Mode=TwoWay, StringFormat=C}" />

ただし、これはデフォルトのビューを変更しません。

4

2 に答える 2

1

試す

<TextBox Text="{Binding Path=CurrencyValue, Mode=TwoWay, StringFormat='§ \{0:n2\}'}" />
于 2013-10-22T16:20:09.877 に答える
0

Wpf/silverlight バインディングは、スレッドの現在のカルチャ設定を尊重しません。言語を手動で設定する必要があります。

この方法でルート コントロールの言語を設定してみてください。

rootControl.Language = XmlLanguage.GetLanguage(cultureInfo.IetfLanguageTag);
于 2013-10-22T16:20:05.953 に答える