ASPxScheduler, as well as other DevExpress ASP.NET controls, offer an advanced client-side API, in addition to the comprehensive server-side object model. This enables web applications based on DevExpress web controls to work more efficiently, using a combination of server-side and client-side processing.
Often, you'll find it useful that client appointments always possess certain properties taken from the list of defined mappings, with values retrieved from the corresponding properties of the server-side appointments. The ASPxScheduler.InitClientAppointment event is helpful in this case. Handle this event to specify appointment properties available at the client side. This event fires for each visible appointment before it is sent to the client for display, so you can vary the properties and custom fields. You can also create a specific property to send arbitrary data to the client side.
Although the entire client API is available on the client side, it's strongly recommended that only the documented public client-side API are used to realize any custom client functionality.
By default, for all end-user actions that do not require re-rendering of the Scheduler's layout, the client Scheduler receives the required data in JSON and updates its view accordingly. The client-side rendering greatly reduces the amount of markup that should be produced on the server, which significantly improves a web application's overall performance. The value of the ASPxScheduler.EnableClientRender property determines whether or not client-side rendering is used.
The following end-user actions trigger client-side rendering of appointments and view elements.
Switching displayed dates.
Switching displayed resources in a grouped view.
Keep in mind that certain customization scenarios require appointments and view elements to be rendered on the server-side. When such customizations are performed, client-side rendering of corresponding elements is automatically turned off, which can affect your web application's performance.
Using the following customization scenarios automatically disables client-side rendering of view elements.