To reproduce: - add RadScheduler with several appointments and use the folllowing code: SchedulerDayView dayView = this.radScheduler1.GetDayView(); dayView.RangeFactor = ScaleRange.QuarterHour; dayView.RulerStartScale = 7; dayView.RulerEndScale = 18; Ensure that you have appointments with start before 7 AM and appointments with start after 18 PM. All appointments with start before 7 AM are displayed at the top of the view, but all appointments with start after 18 PM are not displayed. Workaround: public Form1() { InitializeComponent(); for (int i = 0; i < 20; i++) { Appointment appointment = new Appointment(DateTime.Now.AddHours(12 + i), TimeSpan.FromMinutes(30), "Summary", "Description"); appointment.StatusId = 2; appointment.BackgroundId = 6; this.radScheduler1.Appointments.Add(appointment); } SchedulerDayView dayView = this.radScheduler1.GetDayView(); dayView.RangeFactor = ScaleRange.QuarterHour; dayView.RulerStartScale = 7; dayView.RulerEndScale = 18; this.radScheduler1.AppointmentElementFactory = new CustomAppointmentElementFactory(); } public class CustomAppointmentElementFactory : IAppointmentElementFactory { AppointmentElement IAppointmentElementFactory.CreateAppointmentElement(RadScheduler scheduler, SchedulerView view, IEvent appointment) { return new CustomAppointmentElement(scheduler, view, appointment); } } public class CustomAppointmentElement : AppointmentElement { public CustomAppointmentElement(RadScheduler scheduler, SchedulerView view, IEvent appointment) : base(scheduler, view, appointment) { } protected override void OnParentChanged(Telerik.WinControls.RadElement previousParent) { base.OnParentChanged(previousParent); if (this.Scheduler.ActiveViewType == SchedulerViewType.Day) { if (this.Start.Hour > this.Scheduler.GetDayView().RulerEndScale) { this.Start = this.Start.Date.AddHours(this.Scheduler.GetDayView().RulerEndScale).AddMinutes(-(int)this.Scheduler.GetDayView().RangeFactor); } } } }