I have a Winform application with 2 DateTimePicker's on it, initialized as follows:
private void InitializeComponent()
{
...
this._StartDate.Format = System.Windows.Forms.DateTimePickerFormat.Short;
....
// Note: I use a custom format, because I don't want to display seconds
this._StartTime.CustomFormat = System.Globalization.DateTimeFormatInfo.CurrentInfo.ShortTimePattern;
this._StartTime.Format = System.Windows.Forms.DateTimePickerFormat.Custom;
...
}
My question is: When I pick a new region from "Regional and Language Options" in the Control Panel, the _StartDate display is updated to reflect the new regional settings, but the _StartTime is not. Why not?
UPDATE: It seems af if the System.Globalization.DateTimeFormatInfo.CurrentInfo.ShortTimePattern is not updated until the application is restarted... But how come the Short date is displayed correctly?