C#: начальная буква Набора DayOfWeek как в понедельник не в воскресенье

Существует ли способ установить первый DayOfWeek как в понедельник = 0 не в воскресенье?

(int)dateList[0].DayOfWeek == 0) // 0 = Sunday
17
задан Wim Coenen 28 March 2011 в 20:16
поделиться

2 ответа

Вам нужно будет создать пользовательскую культуру и указать начальный DayOfWeek как понедельник. Экземпляр вашей пользовательской культуры должен быть установлен в контекст, который обычно используется для доступа к информации о культуре (например, Thread.CurrentCulture). Следующая статья поможет вам начать работу над созданием пользовательской культуры:

Как: Создание пользовательских культур

EDIT:

Я только что перечитал ваш вопрос и кое-что заметил. Вы не можете изменить свойство DayOfWeek... это просто значение перечисления. Вам нужно сравнить DayOfWeek со свойством FirstDayOfWeek свойства CultureInfo.DateTimeFormat:

dateList[0].DayOfWeek == Thread.CurrentCulture.DateTimeFormat.FirstDayOfWeek

По умолчанию FirstDayOfWeek - это Sunday. Если вы создали пользовательскую культуру, это может быть любой день недели по вашему выбору (например, понедельник).

11
ответ дан 30 November 2019 в 14:20
поделиться

DayOfWeek - это перечисление , поэтому вы не можете его изменить. Раньше я просто корректировал значение, которое я сохраняю, чтобы компенсировать, и вам, возможно, придется сделать что-то подобное. Мне нужно было 0 = Не установлено.

3
ответ дан 30 November 2019 в 14:20
поделиться
Другие вопросы по тегам:

Похожие вопросы: