How to drag TreeView Node with C # Mouse
Editor to share with you how to use the C # mouse to drag the TreeView node, I believe that most people do not know much about it, so share this article for your reference, I hope you can learn a lot after reading this article, let's go to know it!
We will talk about the problem of C # mouse dragging TreeView nodes, which generally requires left-click dragging, followed by firing. C# mouse drag is to determine the target node to move to according to the mouse coordinates.
Private void TVdepartment_ItemDrag (object sender, ItemDragEventArgs e) / / left-drag {if (e.Button = = MouseButtons.Left) {DoDragDrop (e.Item, DragDropEffects.Move) }} private void TVdepartment_DragEnter (object sender, DragEventArgs e) {if (e.Data.GetDataPresent ("System.Windows.Forms.TreeNode")) {e.Effect = DragDropEffects.Move;} else {e.Effect = DragDropEffects.None }} private void TVdepartment_DragDrop (object sender, DragEventArgs e) / / drag {/ / to get the node TreeNode moveNode = (TreeNode) e.Data.GetData ("System.Windows.Forms.TreeNode") in drag and drop; / / determine the target node Point pt; TreeNode targeNode to move to according to the mouse coordinates Pt = ((TreeView) (sender)) .PointToClient (new Point (e.X, e.Y)); targeNode = this.TVdepartment.GetNodeAt (pt); / / if the target node has no child node, it is added as a sibling node, otherwise it is added to the unended node of the subordinate node TreeNode NewMoveNode = (TreeNode) moveNode.Clone () If (targeNode.Nodes.Count = = 0) {targeNode.Parent.Nodes.Insert (targeNode.Index, NewMoveNode);} else {targeNode.Nodes.Insert (targeNode.Nodes.Count, NewMoveNode) } / / Update the currently dragged node select TVdepartment.SelectedNode = NewMoveNode; / / expand the target node to make it easy to display the drag and drop effect targeNode.Expand (); / / remove the dragged node moveNode.Remove () } these are all the contents of the article "how to drag a TreeView node with a C# mouse". Thank you for reading! I believe we all have a certain understanding, hope to share the content to help you, if you want to learn more knowledge, welcome to follow the industry information channel!