Код: Выделить всё
private static int GetWeeksInMonth(DateTime date)
{
Calendar calendar = CultureInfo.CurrentCulture.Calendar;
DateTime firstDay = new(date.Year, date.Month, 1);
int days = DateTime.DaysInMonth(date.Year, date.Month);
DateTime lastDay = new(date.Year, date.Month, days);
int firstWeek = calendar.GetWeekOfYear(firstDay, CalendarWeekRule.FirstDay, firstDay.DayOfWeek);
int lastWeek = calendar.GetWeekOfYear(lastDay, CalendarWeekRule.FirstDay, lastDay.DayOfWeek);
return (lastWeek - firstWeek) + 1;
}
Подробнее здесь: https://stackoverflow.com/questions/791 ... in-a-month
Мобильная версия