/// <summary> /// /// </summary> /// <param name="e"></param> protected override void OnDragLeave(EventArgs e) { if ( this._selectedNode != null ) { this.SelectedNode = this._selectedNode; } if ( this._previousNode != null ) { this._previousNode.BackColor = this._dragOverNodeBackColor; this._previousNode.ForeColor = this._dragOverNodeForeColor; } this._formDrag.Visible = false; this.Cursor = Cursors.Default; // Call cancel event if ( this.DragCancel != null ) { DragItemEventArgs ea = new DragItemEventArgs(); ea.Node = this._selectedNode; this.DragCancel(this,ea); } }
/// <summary> /// /// </summary> /// <param name="e"></param> protected override void OnKeyUp(KeyEventArgs e) { if ( e.KeyCode == Keys.Escape ) { if ( this._selectedNode != null ) { this.SelectedNode = this._selectedNode; } if ( this._previousNode != null ) { this._previousNode.BackColor = SystemColors.HighlightText; this._previousNode.ForeColor = SystemColors.ControlText; } this.Cursor = Cursors.Default; this._formDrag.Visible = false; // Call cancel event if ( this.DragCancel != null ) { DragItemEventArgs ea = new DragItemEventArgs(); ea.Node = this._selectedNode; this.DragCancel(this,ea); } } }
/// <summary> /// /// </summary> /// <param name="e"></param> protected override void OnItemDrag(ItemDragEventArgs e) { this._selectedNode = (TreeNode) e.Item; // Call dragstart event if ( this.DragStart != null ) { DragItemEventArgs ea = new DragItemEventArgs(); ea.Node = this._selectedNode; this.DragStart(this,ea); } // Somente dará start no drag drop se não for um nó raiz if (this._selectedNode.PrevVisibleNode != null) { // Start drag drop. desde que seja de um nó selecionado na pasta FIELDS if (this._selectedNode.Parent.Text == "Fields") this.DoDragDrop(e.Item, this._dragMode); } }