You could achieve the desired if you set the SnapAppointments property of the ScheduleView to true and keep the current destination Slot in the custom DragDropBehavior. This way will be able to do custom logic only when the destination slot has changed. Please check the following code snippet:
Slot slot =
var destinationSlot = state.DestinationSlots.First();
.slot = destinationSlot;
However if this doesn't help, I'll ask you to share some more details on the exact scenario and requirements.
I'm looking forward to hearing from you.
Check out the Telerik Platform - the only platform that combines a rich set of UI tools with powerful cloud services to develop web, hybrid and native mobile apps.