/// <summary> /// /// </summary> void _listView_Drop(object sender, DragEventArgs e) { e.Handled = true; // Clear the previous drop indicator if (_drag_lastDropTarget == null) { return; } // Get the last target state ListTableDragState dragState = (ListTableDragState)_drag_lastDropTarget.GetValue(DragOverStateProperty); _drag_lastDropTarget.ClearValue(DragOverStateProperty); int targetIndex = this.ListView.ItemContainerGenerator.IndexFromContainer(_drag_lastDropTarget) + (dragState == ListTableDragState.Below ? 1 : 0); RaiseEvent(new ItemDraggedRoutedEventArgs( this, _drag_itemContainer, _drag_itemIndex, targetIndex )); _drag_lastDropTarget = null; }
public static void SetDragOverState(DependencyObject obj, ListTableDragState value) { obj.SetValue(DragOverStateProperty, value); }