[Expand]General Information
[Expand]WinForms Controls
[Expand]ASP.NET Controls and MVC Extensions
[Expand]ASP.NET Bootstrap Controls
[Expand]ASP.NET Core Bootstrap Controls
[Collapse]WPF Controls
  Prerequisites
 [Expand]What's Installed
 [Expand]Common Concepts
 [Expand]MVVM Framework
 [Collapse]Controls and Libraries
   Reporting
  [Expand]Data Grid
  [Expand]Ribbon, Bars and Menu
  [Expand]Charts Suite
  [Expand]Pivot Grid
  [Collapse]Scheduler
   [Expand]Getting Started
   [Expand]Appointments
    Resources
    Reminders
   [Expand]Views
   [Expand]Visual Elements
   [Expand]Styles and Templates
   [Expand]Design-Time Features
    Time Zones
   [Expand]Data Binding
    Grouping
    Selecting
    Navigating
    Printing
    Drag and Drop Customization
    End-User Restrictions
   [Expand]Examples
    Migration Guidelines
  [Expand]Spreadsheet
  [Expand]Rich Text Editor
  [Expand]Tree List
  [Expand]Gauge Controls
  [Expand]Map Control
  [Expand]Layout Management
  [Expand]Windows Modern UI
  [Expand]Printing-Exporting
  [Expand]Data Editors
  [Expand]Navigation Controls
  [Expand]Spell Checker
  [Expand]Property Grid
  [Expand]PDF Viewer
  [Expand]TreeMap Control
  [Expand]Gantt Control
  [Expand]Diagram Control
  [Expand]Windows and Utility Controls
   Dialogs, Notifications and Panels
  [Expand]Scheduler (legacy)
 [Expand]Scaffolding Wizard
 [Expand]Localization
  Redistribution and Deployment
  Get More Help
 [Expand]API Reference
[Expand]Xamarin Controls
[Expand]Windows 10 App Controls
[Expand]Office File API
[Expand]Reporting
[Expand]Report and Dashboard Server
[Expand]Dashboard
[Expand]eXpressApp Framework
[Expand]eXpress Persistent Objects
[Expand]CodeRush
[Expand]CodeRush Classic
[Expand]Cross-Platform Core Libraries
[Expand]Tools and Utilities
 End-User Documentation
View this topic on docs.devexpress.com (Learn more)

Drag and Drop Customization

The Scheduler control provides options and events that allow you to control drag-and-drop operations.

Property Description
SchedulerControl.AllowAppointmentDrag Controls the end-user's capability to drag and drop appointments to another location (time slot or date). You can override this global behavior by handling the SchedulerControl.CustomAllowAppointmentDrag event.
SchedulerControl.AllowAppointmentDragBetweenResources Allows you to restrict dragging appointments to another resource area only.
SchedulerControl.AllowAppointmentConflicts Allows you to restrict dragging appointments to the time interval another appointment occupies.
SchedulerControl.AppointmentDragMode Specifies how an appointment fits in the time cell(s) when dragging it to another time interval.
SchedulerControl.KeepResourceDistanceOnAppointmentDrag Specifies whether to keep a relative interval measured in visual resources between appointments while they are dragged.

The SchedulerControl.AppointmentDrag event occurs when the end-user drags an appointment over the SchedulerControl (see SchedulerControl). Use this event to specify whether the end-user can drag or drop appointments along the time cells.

The SchedulerControl.AppointmentDrop event fires when the end-user drops an appointment onto the SchedulerControl.

The SchedulerControl.CustomAllowAppointmentDrag event fires when the end-user attempts to drag the appointment to another time interval. Use this event to specify a particular case when the end-user can drag an appointment. If you do not specify the behavior manually, the SchedulerControl.AllowAppointmentDrag property manages whether end-users can drag appointments.

The SchedulerControl.CustomAllowAppointmentDragBetweenResources event fires when the end-user attempts to drag the appointment. Use this event to specify a particular case when the end-user can drag an appointment to another resource's area. If you do not specify the behavior manually, the SchedulerControl.AllowAppointmentDragBetweenResources property manages whether end-users can drag appointments.

Tip

Currently the SchedulerControl (see SchedulerControl) does not provide a property or event that specifies whether to keep the original appointment in the SchedulerControl (see SchedulerControl) at the end of a drag-and-drop operation. To preserve an appointment after dropping it into a GridControl (see GridControl), set the DragEventArgsBase.Effects property of the grid's DropRecord (see DataViewBase.DropRecord) event to DragDropEffects.Link.

Is this topic helpful?​​​​​​​