通用 Windows 平台 (UWP)
一个 Microsoft 平台,用于生成和发布适用于 Windows 桌面设备的应用。
20 个问题
你好
我在 UWP 应用程序中有以下示例代码:
int number = 1234;
string str = number.ToString("N0");
var cultureInfo = CultureInfo.CurrentCulture;
我还在 Windows 的区域设置中选择了德语“de-DE”(默认区域格式)。但是,在此示例中,str 为“1,234”,cultureInfo 为“en-US”。它应该是“1.234”和“de-DE”。
我该如何解决这个问题?
你好,
这里有一个获得 CultureInfo的解决方案.
CultureInfo
.var cultureInfo= new System.Globalization.CultureInfo(Windows.System.UserProfile.GlobalizationPreferences.Languages[0]);
var valueToBeFormatted = 1234567891.23;
string currentLanguage= cultureInfo.Name;
string currentRegion = Windows.System.UserProfile.GlobalizationPreferences.HomeGeographicRegion;
// In this case it's the Euro with the default number formatting for Germany.
var DecimalFormatEuroDE = new Windows.Globalization.NumberFormatting.DecimalFormatter(new[] { currentLanguage }, currentRegion);
DecimalFormatEuroDE.IsGrouped = true;
var DecimalValueEuroDE = DecimalFormatEuroDE.Format(valueToBeFormatted);
// Results for display.
var results = "Fixed number (" + valueToBeFormatted + ")\n" +
"Formatted Euro (de-DE defaults): " + DecimalValueEuroDE;
Debug.WriteLine(results);
谢谢.
如果答案是正确的解决方案,请点击“接受答案”并投赞成票。如果您对此答案有其他疑问,请点击“评论”。 注意:如果您想接收此线程的相关电子邮件通知,请按照我们文档中的步骤启用电子邮件通知。