我在输出 DateTime 值时遇到了一些问题。我的计算机的当前文化设置为 de-AT(奥地利)。
下面的代码
string s1 = DateTime.Now.ToString("d");
string s2 = string.Format("{0:d}", DateTime.Now);
导致 s1 和 s2 都具有正确的值“30.06.2009”。
但是当在 XAML 中使用相同的格式时
<TextBlock Text="{Binding Source={x:Static sys:DateTime.Now}, StringFormat=d}"/>
输出是“6/30/2009”。 XAML StringFormat 似乎忽略了当前的区域性设置。这在 Vista 和 XP 上都会发生。
我不想指定自定义格式,因为输出的格式应符合用户的首选文化设置。
有人遇到同样的问题吗?这是 WPF 中的错误吗?
最佳答案
关于c# - WPF XAML 字符串格式日期时间 : Output in wrong culture?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1062160/