private void YearChanged()
        {
            monthComboBox.Items.Clear();

            var months = Enumerable.Range(1, calendar.GetMonthsInYear(selectedYear));
            foreach (var month in months)
            {
                var monthName = DateTimeFormatInfo.CurrentInfo.GetAbbreviatedMonthName(month);
                var monthElement = new MonthElement { Name = monthName, Number = month };
                monthComboBox.Items.Add(monthElement);
            }
            monthComboBox.SelectedIndex = selectedMonth.Number - 1;
        }
 private void InitializeForDate(DateTime date)
 {
     selectedDay = new DayElement { Number = date.Day, Name = DateTimeFormatInfo.CurrentInfo.GetAbbreviatedDayName(calendar.GetDayOfWeek(new DateTime(date.Year, date.Month, date.Day)))};
     selectedMonth = new MonthElement { Number = date.Month, Name = DateTimeFormatInfo.CurrentInfo.GetAbbreviatedMonthName(date.Month)};
     selectedYear = date.Year;
     yearTextBox.Text = date.Year.ToString();
 }
 private void MonthComboBoxOnSelectionChanged(object sender, SelectionChangedEventArgs selectionChangedEventArgs)
 {
     if (selectionChangedEventArgs.AddedItems.Any())
     {
         selectedMonth = selectionChangedEventArgs.AddedItems[0] as MonthElement;
         MonthChanged();
     }
 }