Если вы просто используете метод ToString
на DateTime
, он автоматически будет использовать любой формат, указанный пользователем. Проблема возникает, если вы хотите немного изменить формат. Следующий код выполняет часы и минуты, используя 24 часа / 12 часов в соответствии с настройками устройства:
string modified = CultureInfo
.CurrentCulture
.DateTimeFormat
.LongTimePattern
.Replace(":ss", "");
string dateFormat = string.Format("{{0}}, {{1:{0}}}", modified);
string formattedTime = DateTime.Now.ToString(dateFormat);