Skip to main content

DevExpress v24.2 Update — Your Feedback Matters

Our What's New in v24.2 webpage includes product-specific surveys. Your response to our survey questions will help us measure product satisfaction for features released in this major update and help us refine our plans for our next major release.

Take the survey Not interested

DataViewBase.CompleteRecordDragDrop Event

Occurs when a drag-and-drop operation is completed.

Namespace: DevExpress.Xpf.Grid

Assembly: DevExpress.Xpf.Grid.v24.2.Core.dll

NuGet Package: DevExpress.Wpf.Grid.Core

#Declaration

public event EventHandler<CompleteRecordDragDropEventArgs> CompleteRecordDragDrop

#Event Data

The CompleteRecordDragDrop event's data class is CompleteRecordDragDropEventArgs. The following properties provide information specific to this event:

Property Description
Canceled Gets whether the drag-and-drop operation is canceled.
Effects Gets or sets the target drag-and-drop operation.
Handled Gets or sets a value that indicates the present state of the event handling for a routed event as it travels the route. Inherited from RoutedEventArgs.
OriginalSource Gets the original reporting source as determined by pure hit testing, before any possible Source adjustment by a parent class. Inherited from RoutedEventArgs.
Records Get dropped records.
RoutedEvent Gets or sets the RoutedEvent associated with this RoutedEventArgs instance. Inherited from RoutedEventArgs.
Source Gets or sets a reference to the object that raised the event. Inherited from RoutedEventArgs.

The event data class exposes the following methods:

Method Description
InvokeEventHandler(Delegate, Object) When overridden in a derived class, provides a way to invoke event handlers in a type-specific way, which can increase efficiency over the base implementation. Inherited from RoutedEventArgs.
OnSetSource(Object) When overridden in a derived class, provides a notification callback entry point whenever the value of the Source property of an instance changes. Inherited from RoutedEventArgs.

#Remarks

You can use CompleteRecordDragDrop event to implement a copy operation that does not remove records when dragging.

For example, if you have implemented Drag-and-Drop Between GridControls, you can handle the CompleteRecordDragDrop event to deny removing records:

<dxg:GridControl Name="gridControl1">
   <!---->
   <dxg:GridControl.View>
      <dxg:TableView AllowDragDrop="True" CompleteRecordDragDrop="OnCompleteRecordDragDrop" />
   </dxg:GridControl.View>
</dxg:GridControl>
void OnCompleteRecordDragDrop(object sender, CompleteRecordDragDropEventArgs e) {
   e.Handled = true;
}

The CompleteRecordDragDrop event is raised before the GridControl updates its ItemsSource collection. Use the Dispatcher.BeginInvoke method to invoke certain logic after the ItemsSource collection is modified.

See Also