WinRTXamlToolkit.Controls.Calendar.ProcessDownKey C# (CSharp) Method

ProcessDownKey() private method

Inherited code: Requires comment.
private ProcessDownKey ( bool ctrl, bool shift ) : void
ctrl bool Inherited code: Requires comment 1.
shift bool Inherited code: Requires comment 2.
return void
        internal void ProcessDownKey(bool ctrl, bool shift)
        {
            switch (DisplayMode)
            {
                case CalendarMode.Month:
                    {
                        if (!ctrl || shift)
                        {
                            DateTime? selectedDate = DateTimeHelper.AddDays(LastSelectedDate.GetValueOrDefault(DateTime.Today), ColumnsPerMonth);
                            ProcessSelection(shift, selectedDate, ColumnsPerMonth);
                        }
                        break;
                    }
                case CalendarMode.Year:
                    {
                        if (ctrl)
                        {
                            DisplayDate = SelectedMonth;
                            DisplayMode = CalendarMode.Month;
                        }
                        else
                        {
                            DateTime? selectedMonth = DateTimeHelper.AddMonths(_selectedMonth, ColumnsPerYear);
                            OnSelectedMonthChanged(selectedMonth);
                        }
                        break;
                    }
                case CalendarMode.Decade:
                    {
                        if (ctrl)
                        {
                            SelectedMonth = SelectedYear;
                            DisplayMode = CalendarMode.Year;
                        }
                        else
                        {
                            DateTime? selectedYear = DateTimeHelper.AddYears(SelectedYear, ColumnsPerYear);
                            OnSelectedYearChanged(selectedYear);
                        }
                        break;
                    }
            }
        }