wpf-devexpress-dot-xpf-dot-scheduling-dot-schedulercontrol-74cbed70.md
Raised repeatedly while the user drags appointments within a Scheduler’s view.
Namespace : DevExpress.Xpf.Scheduling
Assembly : DevExpress.Xpf.Scheduling.v25.2.dll
NuGet Package : DevExpress.Wpf.Scheduling
public event DragAppointmentOverEventHandler DragAppointmentOver
Public Event DragAppointmentOver As DragAppointmentOverEventHandler
The DragAppointmentOver event's data class is DevExpress.Xpf.Scheduling.DragAppointmentOverEventArgs.
The example below illustrates how to assign a specific label to appointments that intersect another appointment.
private void Scheduler_DragAppointmentOver(object sender, DragAppointmentOverEventArgs e) {
//if a dragged appointment intersects another appointment, paint it red to indicate a conflict
for (int i = 0; i < e.ConflictedAppointments.Count; i++)
if (e.ConflictedAppointments[i].Count > 0)
e.DragAppointments[i].LabelId = 1;
//roll the label back if no conflicts are detected
for (int j = 0; j < e.ConflictedAppointments.Count; j++)
if (e.ConflictedAppointments[j].Count == 0)
e.DragAppointments[j].LabelId = e.SourceAppointments[j].LabelId;
}
Private Sub Scheduler_DragAppointmentOver(ByVal sender As Object, ByVal e As DragAppointmentOverEventArgs)
'if a dragged appointment intersects another appointment, paint it red to indicate a conflict
For i As Integer = 0 To e.ConflictedAppointments.Count - 1
If e.ConflictedAppointments(i).Count > 0 Then
e.DragAppointments(i).LabelId = 1
End If
Next i
'roll the label back if no conflicts are detected
For j As Integer = 0 To e.ConflictedAppointments.Count - 1
If e.ConflictedAppointments(j).Count = 0 Then
e.DragAppointments(j).LabelId = e.SourceAppointments(j).LabelId
End If
Next j
End Sub
See Also