Drag & Drop Restrictions per Event & Resource

The drag & drop interactions can be fine-tuned depending on the requirements and situations. Maybe controlled by roles, event types, resources the move and resize can be turned on/off on an event basis, per resource or globally on the instance.

  • Events can be fixed in length (cannot be resized) - by setting dragToResize option to false the events cannot be resized.
  • Events can be fixed in time (cannot be moved) - by setting dragInTime option to false the events cannot be moved in time. Take in consideration that dragToMove must be set to true
  • Events can be fixed to resource (cannot be moved to another resource) - by setting dragBetweenResources option to false the events cannot be moved between resources. Take in consideration that dragToMove must be set to true

To control this on a resource an event basis, use the appropriate properties which have precedence over global calendar options.

Get started with this example

Demo

Control the interaction globally (all events/resources)
Events cannot be resized dragToResize=false
Events cannot be moved in time dragInTime=false
Events cannot be moved between resources dragBetweenResources=false
// relevant events
const myData = [{
    color: 'cyan',
    end: '2026-10-20T14:00',
    resize: false,
    resource: 1,
    start: '2026-10-20T09:00',
    title: 'Event 1 (cannot be resized)'
}, {
    color: 'green',
    dragBetweenResources: false,
    end: '2026-10-20T16:00',
    resource: 2,
    start: '2026-10-20T10:00',
    title: 'Event 3 (cannot be moved between resources)'
}, {
    color: 'blue',
    dragInTime: false,
    end: '2026-10-20T15:00',
    resource: 3,
    start: '2026-10-20T11:00',
    title: 'Event 5 (cannot be moved in time)'
}];
// relevant resources
const myResources = [{
    id: 4,
    name: 'Resource D (Events cannot be moved in time)',
    eventDragInTime: false
}, {
    id: 5,
    name: 'Resource E (Events cannot be moved between resources)',
    eventDragBetweenResources: false
}, {
    id: 6,
    name: 'Resource F (Events cannot be resized)',
    eventResize: false
}];

<Eventcalendar
    view={{
        timeline: { type: 'day' }
    }}
    data={myData}
    resources={myResources}
    dragToMove={true}
    dragToResize={true}
    dragInTime={true}
    dragBetweenResources={true}
/>
Restrict drag, move, and resize on a Timeline per event, resource, or globally — lock events in time, fix length, or prevent resource switches.

Duplicate Session

You have signed in on a different machine. To keep everything in sync, you have been signed out of this session.

If you need to invite team members, manage seats and accounts you can do it from the licenses page.

Duplicate Session

We noticed you are logged in on a different machine and have closed your old session.

If you need to invite team members, manage seats and accounts you can do it from the licenses page.