private void myRelationshipTree_MouseLeftButtonDown(object sender, MouseButtonEventArgs e) { var dragAction = DragDropEffects.None; if ((Keyboard.Modifiers & ModifierKeys.Shift) != ModifierKeys.None) { dragAction = DragDropEffects.Move; } else if ((Keyboard.Modifiers & ModifierKeys.Control) != ModifierKeys.None) { dragAction = DragDropEffects.Copy; } if (dragAction == DragDropEffects.None) { return; } var draggedItem = myTree.GetItemAtLocation <TreeViewItem>(MouseUtilities.GetMousePosition(myTree)); if (draggedItem == null) { return; } var dragInfo = new TreeDragInfo(draggedItem); dragInfo.Action = dragAction; DragDrop.DoDragDrop(myTree, dragInfo.ToDataObject(), dragInfo.Action); e.Handled = true; }
private void myRelationshipTree_MouseLeftButtonDown( object sender, MouseButtonEventArgs e ) { var dragAction = DragDropEffects.None; if ( ( Keyboard.Modifiers & ModifierKeys.Shift ) != ModifierKeys.None ) { dragAction = DragDropEffects.Move; } else if ( ( Keyboard.Modifiers & ModifierKeys.Control ) != ModifierKeys.None ) { dragAction = DragDropEffects.Copy; } if ( dragAction == DragDropEffects.None ) { return; } var draggedItem = myTree.GetItemAtLocation<TreeViewItem>( MouseUtilities.GetMousePosition( myTree ) ); if ( draggedItem == null ) { return; } var dragInfo = new TreeDragInfo( draggedItem ); dragInfo.Action = dragAction; DragDrop.DoDragDrop( myTree, dragInfo.ToDataObject(), dragInfo.Action ); e.Handled = true; }