private void CancelDrag()
        {
            if (this.capturedPointer == null)
            {
                return;
            }

            this.dragVisualContext.DragVisualHost.ReleasePointerCapture(this.capturedPointer);
            this.dragCompleteContext = new DragCompleteContext(this.dragContext.PayloadData, this, false);

            this.OnDragLeave();
        }
        private void OnDrop()
        {
            this.OnDragLeave();

            this.dragCompleteContext = new DragCompleteContext(this.dragContext.PayloadData, this, true);

            if (this.targetElement != null)
            {
                this.dragCompleteContext.Destination = this.targetElement;

                this.targetElement.OnDrop(this.dragContext);
            }
        }