要实现C#中TreeNode的拖放功能,你可以按照以下步骤操作:
首先,确保你的TreeView控件的AllowDrop属性设置为true,这样才能够拖放TreeNode。
在TreeView的ItemDrag事件中,设置要拖动的TreeNode的DoDragDrop方法。例如:
private void treeView1_ItemDrag(object sender, ItemDragEventArgs e) { DoDragDrop(e.Item, DragDropEffects.Move); } private void treeView1_DragEnter(object sender, DragEventArgs e) { e.Effect = DragDropEffects.Move; } private void treeView1_DragDrop(object sender, DragEventArgs e) { TreeNode newNode = (TreeNode)e.Data.GetData(typeof(TreeNode)); Point pt = treeView1.PointToClient(new Point(e.X, e.Y)); TreeNode targetNode = treeView1.GetNodeAt(pt); if (targetNode != null) { targetNode.Nodes.Add((TreeNode)newNode.Clone()); targetNode.Expand(); } } 通过以上步骤,你可以实现C#中TreeNode的拖放功能。