Can i prevent a round of cell rendering to save some delays?

Dear Sir or Madam,

I am trying to make my schedule component faster in certain scenarios. One of these scenarios is the following: a date navigation in TimelineMonth view. 

Using appropriate console.logs i notice that between actionBegin (with dateNavigate) and actionComplete (with dateNavigate ) a round of cell rendering occurs. If i am in TimelineMonth and have a big number of resources, this amounts to a significant number of cells which takes some time. Can i avoid this?

After actionComplete, i am sending a request to the back-end. When this completes i need anyways to re-render all cells (to customize them according to the returned results). Hence it seems to me that the first round of cell rendering is completely unnecessary and time consuming. 

The only way i have found to prevent the cell rendering is to call args.cancel = true inside actionBegin. But inside actionBegin there is no information on the targeted dates. Hence i have no way to trigger the date navigation myself. 

Am i missing anything? Is there any way to achieve my requirement? Please do not suggest virtual scrolling, i am already aware of this.

Kind regards,

Panagiotis


1 Reply

VR Vijayakumar Rajasekar Syncfusion Team February 20, 2026 11:43 AM UTC

Hi P Kolokouris,

Thank you for reaching out to Syncfusion support.
We have reviewed your query regarding the targeted date information not being present in the 'actionBegin' event during date navigation. The actionBegin event does not include information related to targeted dates, as it only contains the name of the action, such as 'view navigate' or 'date navigate'.
To address this, we recommend using the 'navigating' event instead of the 'actionBegin' event. The navigating event triggers before date navigation and provides both the target and previous date information. Below is a code snippet demonstrating how to use the 'navigating' event to obtain the required information and restrict default date navigation:
public onNavigating(args: NavigatingEventArgs): void {
    debugger;
    if (args.currentDate != args.previousDate) {
      args.cancel = true;
      this.scheduleObj.selectedDate = args.currentDate;
    }
  }
Please find the sample link below that we prepared based on your scenario.
Feel free to reach out if you need further assistance.

Regards,

Vijayakumar R


Loader.
Up arrow icon