Подтвердить что ты не робот

Формат WPF DateTime в TextBlock?

У меня есть TextBlock, связанный с свойством DateTime. Как настроить формат даты?

4b9b3361

Ответ 1

При объявлении привязки доступно свойство формата строки:

<TextBox Text="{Binding Path=DateTimeValue, StringFormat=dd-MM-yyyy}" />

(Вы должны быть на .NET 3.5 SP1, чтобы это свойство существовало)

Ответ 2

Если вы хотите использовать общую строку формата между связями, вы можете объявить привязку следующим образом:

<Textbox Text={Binding Path=DateTimeValue, StringFormat={x:Static local:Constants.DateTimeUiFormat}} />

С вашим классом констант следующим образом:

public static class Constants
{
    public const string DateTimeUiFormat = "dd/MM/yyyy";

    //etc...
}

Ответ 3

Может быть полезно кому-то:

<TextBlock Text="{Binding Source={x:Static sys:DateTime.Now},
           StringFormat='{}{0: Today is dddd, MMMM dd, yyyy, hh:mm:ss}'}"/>

или 24h и 2digits формат месяца и года:

<TextBlock Text="{Binding Source={x:Static sys:DateTime.Now},
           StringFormat='{}{0: Today is dddd, MM.dd.yy, HH:mm:ss}'}"/>