Silverlightのデフォルトの文字列形式
-
09-10-2019 - |
質問
たとえば、ダブルを持っています
double d = 4.323d;
そして、Silverlight 4アプリケーションのテキストブロックに表示したいのですが、ディスプレイは次のとおりです。
4.32
そして、私はバインディングのStringFormatを変更することはできません。
例外は、番号がこれである場合です。
double d2 = 4d;
その後、表示する必要があります
4
, 、 いいえ 4.00
.
そして最悪の例外は、現在のUI文化を考慮に入れる必要があることです。これは、アプリが米国に展開されている場合、 .
小数の個別として、そしてヨーロッパでは使用する必要があります ,
(英国ではありませんが、ポイントが得られます...)
defaultformatをに設定できます #.##
stringformatを変更できたが、cultureinfoを通してそれをしたい
解決
私はあなたが使用していないためにバインディングでstringformatを使用できないと信じていると想定するつもりです CultureInfo
. 。その場合、これら2つの使用法をユーザーコントロールコードに追加します: -
using System.Windows.Markup;
using System.Threading;
そして、これをそのコンストラクターに追加します: -
Language = XmlLanguage.GetLanguage(Thread.CurrentThread.CurrentCulture.Name);
今、バインディング StringFormat=#.##
現在の培養に適切な小口分離器を使用します。
所属していません StackOverflow