在我的Windows应用商店应用中,我使用"{0:D}"
我认为Windows默认语言是英语(英国)。在我的应用程序中,我想显示多种语言。如果我更改语言,假设我更改为英语(美国),日期显示为( 2013年3月9日星期日)。
loadedDate = DateTime.ParseExact(data.issues[four].date.ToString(), "yyyyMMdd", null);
var date = loadedDate.DayOfWeek + " " + String.Format("{0:D}", loadedDate);
txt4.Text = date;
如果我尝试更改为任何语言,它将以相同的方式显示: 任何帮助都会有所帮助。
答案 0 :(得分:0)
您可以在MSDN页面Quickstart: Translating UI resources (Windows Store apps using C#/VB/C++ and XAML)上找到“为其他语言测试应用”的指南:
- 打开控制面板,然后选择时钟,语言和区域> 语言。
- 请注意运行时显示的语言 app是列出的英语,德语或法语的首选语言。如果您的顶级语言不是这三种语言中的一种,则该应用程序会退回 到应用程序支持的列表中的下一个。
- 如果您的计算机上没有这三种语言,请添加缺少的语言 单击添加语言并将其添加到列表中。
- 要使用其他语言测试应用,请在列表中选择语言 单击“向上移动”直到它位于顶部。然后运行应用程序。
醇>
据我所知,这正是你试图做的。在您的示例中,您使用的是属性DateTime.DayOfWeek,这不是本地化,因为它只是一个简单的枚举,因此当您看到星期日时,您实际上会看到来自DayOfWeek enumeration的值。要获得本地化的星期几,您可以通过不同的方式查找本地化的星期几,其中之一是:
CultureInfo.CurrentCulture.DateTimeFormat.GetDayName(loadedDate.DayOfWeek)
如果您需要更高级的日期时间格式化方法,也可以使用DateTimeFormatter。