private Period MoveMonth(int amount) { var newMonth = Current.Month + amount; var newYear = Current.Year; if (!_months.IsInRange(newMonth)) { if (amount < 0) { newMonth = _months.Maximum; newYear -= 1; } else { newMonth = _months.Minimum; newYear += 1; } } return(new Period(newMonth, newYear)); }
/// <summary> /// Determines whether this instance can move. /// </summary> /// <returns> /// <c>true</c> if this instance can move; otherwise, <c>false</c>. /// </returns> protected override bool CanMove() { return(filter.IsInRange(CurrentPage + 1)); }