The DayPilotNavigator.VisibleRangeChanged event allows rebinding the free/busy information after date change.
VisibleRangeChanged is fired automatically when you change the visible months by clicking the arrow links in the Navigator header:

If you want to refresh the Navigator free/busy information manually, you can call visibleRangeChangedCallBack() on the client-side:
dpn.visibleRangeChangedCallBack();
The best place to call visibleRangeChangedCallBack() is the AfterRenderJavaScript handler.
AfterRenderJavaScript="afterRender(data)"
function afterRender(data) {
if (data.navigatorRefresh) {
dpn.visibleRangeChangedCallBack();
}
}In this case, the Navigator update will only be requested if you call Update() with the following parameters:
Hashtable data = new Hashtable(); data["navigatorRefresh"] = true; DayPilotCalendar1.Update(data);