Search code examples
wpfdrag-and-dropwrappanel

WPF : Reorder WrapPanel content via drag and drop?


I am looking for a way to reorder the content (items) of a WPF WrapPanel via drag and drop. I just want to click on an item and drag it to a new position.

To my understanding this is a very common task and I wonder I someone already did this or has any idea how to implement this functionality.

I did a google search already but found nothing. Maybe it is more difficult than I expected.


Solution

  • I've written a library which may help: default behaviour is to allow re-ordering within the same control:

    http://code.google.com/p/gong-wpf-dragdrop/

    Ah I notice you're talking about just a WrapPanel: you'll need to use an ItemsControl with a WrapPanel:

    <ItemsControl.ItemsPanel>
        <ItemsPanelTemplate>
            <WrapPanel />
        </ItemsPanelTemplate>
    </ItemsControl.ItemsPanel>