DayPilot - Open-Source Outlook-Like Calendar/Scheduling Control for ASP.NET
Try the online demo: AJAX-style event creating, moving, resizing, and deleting • Context menu • Day view • Work week view • Week view • Month view • Horizontal/vertical resources view • PostBack/AJAX/JavaScript event handling • Binding to XmlDataSource, SqlDataSource, DataTable, ArrayList • Custom event formatting • UpdatePanel compatibility

On-demand event loading

The original DayPilotScheduler allows showing a long time range (one year with one cell per day is not a problem). However, it renders all the events at once. In case that you have hundreds of events it will render very slowly and the callbacks and postbacks will take a lot of time.

DayPilotSchedulerDynamic offers a major improvement: It loads only the events that belong to the current view port (only a limited time range and a limited set of resources).

The advantages are obvious:

  • You can show many more resources (adding more resources won't slow down the control)
  • The control renders quickly with a full schedule as well.

When you scroll down or right, it sends a request for a new set of events to the server (Scroll event) and updates quickly. The background cells are rendered after the event set is loaded. The white background area indicates that the events were not loaded yet.

When binding the data source (during the initial loading, during scrolling or after an update) you can get the information about the visible area using ViewPort property:

DateTime firstVisibleDate = DynamicScheduler1.ViewPort.Start;
DateTime lastVisibleDate = DynamicScheduler1.ViewPort.End;
List<string> visibleResourcesIDs = DynamicScheduler1.ViewPort.Resources;

You should use the ViewPort property to limit the SQL query.

DayPilot Pro is an advanced DayPilot edition. You can check a thumbnail overview of the most interesting features. There is also an online demo with all the features working (including the AJAX features). If you want to test the design-time support and API you can download a fully functional trial version. And if you like it, you can buy a full version with source code and 12 months of upgrades and support (with a 30-days money back guarantee).

DayPilot Lite is a do-it-yourself open-source edition of DayPilot. Although it misses some DayPilot Pro features, there are thousands of developers using it to build calendar, personal scheduling, and resource booking applications.

Questions or suggestions? Try DayPilot forums or contact us directly.