ItemsControl Drag and Drop

У меня есть ItemsControl с DataTemplate, который связан с ObservableCollection целых чисел.

<ItemsControl Name="DimsContainer" ItemTemplate="{StaticResource DimensionsTemplate}">
    <ItemsControl.ItemsPanel>
        <ItemsPanelTemplate>
            <StackPanel Orientation="Horizontal"/>
        </ItemsPanelTemplate>
   </ItemsControl.ItemsPanel>
</ItemsControl>

И в ресурсах Windows:

<Window.Resources>
    <DataTemplate x:Key="DimensionsTemplate" >
        <TextBlock Text="{Binding}"
                       Padding="5"
                       VerticalAlignment="Center"
                       FontSize="32"/>
    </DataTemplate>
</Window.Resources>

Я' Я пытаюсь реализовать возможность перетаскивать элементы в ItemsControl (т.е. иметь возможность переупорядочивать целые числа). У кого-нибудь есть простой пример, как это сделать? Я подключил события PreviewMouseMove, DragEnter и Drop. Проблема в том, что я не могу понять, как определить, какой элемент перетаскивается и куда он перетаскивается. Кажется, что весь ItemsControl передается в события.

11
задан KrisTrip 20 August 2010 в 21:17
поделиться