/// <summary>
        /// Event raised when the user has finished dragging a node.
        /// </summary>
        private void NodeItem_DragCompleted(object source, NodeDragCompletedEventArgs e)
        {
            e.Handled = true;

            var eventArgs = new NodeDragCompletedEventArgs(NodeDragCompletedEvent, this, this.SelectedNodes);
            RaiseEvent(eventArgs);

            if (cachedSelectedNodeItems != null)
            {
                cachedSelectedNodeItems = null;
            }

            this.IsDragging = false;
            this.IsNotDragging = true;
            this.IsDraggingNode = false;
            this.IsNotDraggingNode = true;
        }
        /// <summary>
        /// Event raised when the user has finished dragging a node.
        /// </summary>
        private void NodeItem_DragCompleted(object source, NodeDragCompletedEventArgs e)
        {
            e.Handled = true;

            var eventArgs = new NodeDragCompletedEventArgs(NodeDragCompletedEvent, this, this.SelectedNodes);

            RaiseEvent(eventArgs);

            if (cachedSelectedNodeItems != null)
            {
                cachedSelectedNodeItems = null;
            }

            this.IsDragging        = false;
            this.IsNotDragging     = true;
            this.IsDraggingNode    = false;
            this.IsNotDraggingNode = true;
        }
 /// <summary>
 /// 
 /// </summary>
 /// <param name="sender"></param>
 /// <param name="e"></param>
 private void networkControl_NodeDragCompleted(object sender, NodeDragCompletedEventArgs e)
 {
     ViewModel.OnNodeDragCompleted(sender as NetworkView, e);
 }
        /// <summary>
        /// 
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        public void OnNodeDragCompleted(NetworkView sender, NodeDragCompletedEventArgs e)
        {
            foreach (PositionNodeUndoCommand.NodeDraggingInfo info in m_CachedNodesDraggingList)
            {
                info.EndX = info.Node.X;
                info.EndY = info.Node.Y;
            }

            UndoRedoManager.Add(new PositionNodeUndoCommand(this, m_CachedNodesDraggingList));
        }
 // trigger a resize of the workspace when a node has been dragged
 void networkControl_NodeDragCompleted(object sender, NodeDragCompletedEventArgs e)
 {
     ResizeWorkarea();
 }