Получение текущего шаблона даты культуры в коде XAML

Так что в моем (большом) проекте у меня есть специальное поле даты, которое происходит из замаскированного текстового поля и, таким образом, имеет свойство "Формат". Это работает, давая ему короткий формат даты, такой как:

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

Теперь при запуске приложения свойство ShortDatePattern объекта CultureInfo.CurrentCulture.DateTimeFormat устанавливается в зависимости от некоторой логики. Я хотел бы получить этот ShortDatePattern, чтобы использовать его в качестве значения для моего свойства Format моего DateMaskTextBox.

Пока у меня есть это, и оно не работает:

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

Есть идеи, почему это не работает? Благодарю.

1 ответ

Решение

Этот синтаксис Binding верен и должен нормально работать. Получаете ли вы какие-либо ошибки привязки в вашем окне вывода? Вы пытались отобразить ту же Binding в TextBlock.Text вместо вашего элемента управления, чтобы увидеть, проходит ли строка?

Не видя его код, я не могу сказать, но я подозреваю, что проблема может быть с DateMaskTextBox, а не Binding. Если элемент управления не настроен правильно для соответствия вновь установленным значениям его свойства Format, связанное значение может вообще не использоваться или слишком поздно, чтобы повлиять на поведение, которое вы видите при взаимодействии с элементом управления.

Другие вопросы по тегам