DateTime formatting in WPF DateTimePicker (DateTimeEdit)
29 Sep 20214 minutes to read
you can specify the selected datetime display format in the WPF DateTimePicker (DateTimeEdit) by using the predefined patterns and custom patterns.
Predefined display patterns
You can display the selected date time in the predefined patterns
by setting the pattern value to the Pattern property. The default value of Pattern
property is ShortDate
.
The DateTimeEdit
control supports the following patterns:
- LongDate
- LongTime
- ShortDate
- ShortTime
- FullDateTime
- MonthDay
- CustomPattern
- ShortableDateTime
- UniversalShortableDateTime
- RFC1123
- YearMonth
<syncfusion:DateTimeEdit Pattern="FullDateTime"
Name="dateTimeEdit" />
DateTimeEdit dateTimeEdit = new DateTimeEdit();
dateTimeEdit.Pattern = DateTimePattern.FullDateTime;
NOTE
View Sample in GitHub
Pattern Changed notification
The DateTimeEdit
notifies that the pattern is changed through the PatternChanged event. You can get the old and new pattern by using the OldValue
and NewValue
properties in the PatternChanged
event.
DateTimeEdit dateTimeEdit = new DateTimeEdit();
dateTimeEdit.PatternChanged += DateTimeEdit_PatternChanged;
private void DateTimeEdit_PatternChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) {
//Get old and new pattern values
var oldPattern = e.OldValue;
var newPattern = e.NewValue;
}
Change datetime format
you can change the date time format by using the DateTimeFormat property. The default value of property is
.
<syncfusion:DateTimeEdit Name="dateTimeEdit">
<syncfusion:DateTimeEdit.DateTimeFormat>
<global:DateTimeFormatInfo ShortDatePattern="MM/dd/yy hh:mm:ss"/>
</syncfusion:DateTimeEdit.DateTimeFormat>
</syncfusion:DateTimeEdit>
DateTimeEdit dateTimeEdit = new DateTimeEdit();
dateTimeEdit.DateTimeFormat = new DateTimeFormatInfo()
{
ShortDatePattern = "MM/dd/yy hh:mm:ss"
};
NOTE
View Sample in GitHub
Custom display pattern
You can also set the custom pattern for displaying the datetime in the DateTimeEdit
control by using the CustomPattern property. You can enable the custom display pattern by setting the Pattern
property value as CustomPattern
.
<syncfusion:DateTimeEdit CustomPattern="MM**dd**yy"
Pattern="CustomPattern"
Name="dateTimeEdit" />
DateTimeEdit dateTimeEdit = new DateTimeEdit();
dateTimeEdit.CustomPattern = "MM**dd**yy";
dateTimeEdit.Pattern = DateTimePattern.CustomPattern;
NOTE
View Sample in GitHub
Custom pattern Changed notification
The DateTimeEdit
notifies that the custom pattern is changed through the CustomPatternChanged event. You can get the old and new custom pattern by using the OldValue
and NewValue
properties in the CustomPatternChanged
event.
DateTimeEdit dateTimeEdit = new DateTimeEdit();
dateTimeEdit.CustomPatternChanged += dateTimeEdit_CustomPatternChanged;
private void dateTimeEdit_CustomPatternChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) {
//Get old and new custom pattern values
var oldCustomPattern = e.OldValue;
var newCustomPattern = e.NewValue;
}
NOTE
View Sample in GitHub
Change culture
By default, the DateTimeEdit
supports system’s current culture. You can change the culture of DateTimeEdit
by using the CultureInfo property. Based on the value of CultureInfo
property, DateTimeEdit
control elements localized.
<syncfusion:DateTimeEdit CultureInfo="en-US"
Pattern="FullDateTime"
Name="dateTimeEdit" />
DateTimeEdit dateTimeEdit = new DateTimeEdit();
dateTimeEdit.CultureInfo = new CultureInfo("fr-FR");
dateTimeEdit.Pattern = DateTimePattern.FullDateTime;
NOTE
View Sample in GitHub