public void MouseUp(MouseEventArgs e) { if (!this.preCanceled) { this.finalConnector = GraphDiagram.GetConnector(this.tempLayer, e.Location); if (this.finalConnector == null) { this.PreCancel(); throw new OperationException(Operation.InsertArrow, "Change to Nop Operation"); } else if (this.finalConnector == this.initialConnector) { this.finalConnector = null; dragMode = false; } else { this.Do(); throw new OperationException(Operation.InsertArrow, "Send a MouseMoveEvent"); } } else { this.Cancel(); } }