DateTime 字符串格式 (dd.MM) 本地化 XAML
Posted
技术标签:
【中文标题】DateTime 字符串格式 (dd.MM) 本地化 XAML【英文标题】:DateTime string format (dd.MM) localized XAML 【发布时间】:2014-01-13 16:00:45 【问题描述】:我发现了一些有用的问题,但他们没有帮助我。我正在开发 Windows Phone 8 应用程序,如果文化是土耳其语,我只想在 TextBlock(绑定日期时间)上显示 dd.MM。如果文化是 en 则显示 MM.dd
文本="绑定 MyProperty.CreateDate, StringFormat=\0:dd.MM\"以上代码在土耳其文化中是正确的。但是在英语中是没有意义的。实际上问题不在于英语或土耳其语。我只想显示以当前文化格式化的日和月。
【问题讨论】:
【参考方案1】:如果您想指定自己的格式,可以在本地化资源文件中创建不同的格式字符串并绑定到 StringFormat
Text="Binding MyProperty.CreateDate, StringFormat=StaticResource shorDateFormatString"
或者,在代码隐藏中设置日期文本,并使用一些自定义逻辑来查看本地约定中的月份或日期是第一位的
string shortDatePattern = CultureInfo.CurrentCulture.DateTimeFormat.ShortDatePattern
if(shortDatePattern.indexOf("dd") < shortDatePattern.indexOf("MM"))
dateLabel.Text = MyProperty.CreateDate.toString("dd.MM")
else
dateLabel.Text = MyProperty.CreateDate.toString("dd.MM")
正如this response中所建议的那样
【讨论】:
以上是关于DateTime 字符串格式 (dd.MM) 本地化 XAML的主要内容,如果未能解决你的问题,请参考以下文章
DateTime ToString(“dd/MM/yyyy”) 返回 dd.MM.yyyy
如何发送日期时间参数为DD / MM / YYYY HH:MM:SS格式?
将 dd/mm/yyyy 格式的字符串转换为日期时间 [重复]