New to Telerik UI for .NET MAUI? Start a free 30-day trial

Using the Drop Method in DragDropBehavior with CollectionView for .NET MAUI

Environment

Version Product Author
10.1.0 Telerik UI for .NET MAUI CollectionView Dobrinka Yordanova

Description

I want to notify the view model when drag-and-drop actions are performed in the CollectionView for .NET MAUI. Unlike the RadListView.ReorderEnded event, CollectionView uses DragDropBehavior, but it isn't clear how to inform the view model of the drop action.

This knowledge base article also answers the following questions:

  • How to handle drag-and-drop in CollectionView for .NET MAUI?
  • How to use the Drop method of DragDropBehavior in CollectionView?
  • How to notify a view model of drag-and-drop actions in CollectionView for .NET MAUI?

Solution

To notify the view model of drag-and-drop actions in the CollectionView for .NET MAUI, use the Drop method in the DragDropBehavior. This method is triggered when an item is dropped. You can call this method within the context of the behavior to handle the drag-and-drop operation.

Example

Here is an example of implementing the Drop method:

public class CustomDragDropBehavior : CollectionViewDragDropBehavior
{
    public override void Drop(CollectionViewDragDropContext state)
    {
        var collectionView = this.CollectionView;
        if (collectionView != null)
        {
            base.Drop(state);
            // Notify the view model about the drop action
            var viewModel = collectionView.BindingContext as YourViewModel;
            // add your logic here
        }
    }
}

Key Points

  1. Override the Drop method in a custom behavior class.
  2. Access the CollectionView.
  3. Notify the view model by invoking a method or updating properties.

For additional information on drag-and-drop functionality, refer to the DragDrop Grouped Items documentation.

See Also

In this article