在XAML代码中获取当前区域性日期模式



所以在我的(大型)项目中,我有一个特殊的日期框,它派生自遮罩文本框,因此具有"Format"属性。它的工作原理是给它一个简短的日期格式,如:

<extended:DateMaskTextBox Format="yyyy-MM-dd" />

现在,在应用程序开始时,根据一些逻辑设置CultureInfo.CurrentCulture.DateTimeFormat对象的shortdateppattern属性。我想获得这个短日期模式使用它作为我的DateMaskTextBox的格式属性的值。

到目前为止,我得到了这个,它是工作:

<extended:DateMaskTextBox Format="{Binding Source={x:Static glob:CultureInfo.CurrentCulture}, Path=DateTimeFormat.ShortDatePattern}" />

知道为什么这不起作用吗?谢谢。

这个绑定语法是正确的,应该可以正常工作。在输出窗口中是否出现任何绑定错误?你试过在TextBlock上显示相同的Binding吗?文本取代你的控制,只是看看字符串是否通过?

没有看到它的代码,我不能告诉,但我怀疑问题可能是与DateMaskTextBox,而不是绑定。如果控件没有正确设置为尊重其Format属性的新设置值,则绑定值可能根本不会被使用,或者使用得太晚,无法影响您在与控件交互时看到的行为。

最新更新