Overblog Tous les blogs Top blogs Économie, Finance & Droit Tous les blogs Économie, Finance & Droit
Editer l'article Suivre ce blog Administration + Créer mon blog
MENU

Cycle de progression Faire (quelque chose qui marche) -> comprendre ce que l’on fait/comment cela marche -> pousser plus loin les notions

Publicité

DragDrop TreeView

DragDrop TreeView
 
la treeview doit avoir sa propriété AllowDrop réglée à true 
 
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Drawing;
using System.Data;
using System.Text;
using System.Windows.Forms;
 
namespace NET2CsGenObjects.UI
{
    public partial class UCHierarchy : UserControl
    {
  
       TreeNode oTreeNodeBase;
        public UCHierarchy()
        {
            InitializeComponent();
            oTreeNodeBase = new TreeNode();
        }
 
 
        private void UCHierarchy_Load(object sender, EventArgs e)
        {
            TreeNode ParentNode1;
            TreeNode ParentNode2;
            ParentNode1 = treeView1.Nodes.Add("tv1");
            {
                ParentNode1.Nodes.Add("tv1FirstChild");
                ParentNode1.Nodes.Add("tv1SecondChild");
                ParentNode1.Nodes.Add("tv1ThirdChild");
                ParentNode1.Nodes.Add("tv1FourthChild");
                ParentNode1.Expand();
            }
            ParentNode2 = treeView1.Nodes.Add("tv2");
            {
                ParentNode2.Nodes.Add("tv2FirstChild");
                ParentNode2.Nodes.Add("tv2SecondChild");
                ParentNode2.Expand();
            }
        }
   
        // 1
        private void treeView1_DragEnter(object sender, DragEventArgs e)
        {
            e.Effect = DragDropEffects.Move;
            Point pt = treeView1.PointToClient(new Point(e.X, e.Y));
            TreeNode targetNode = treeView1.GetNodeAt(pt);
 
            oTreeNodeBase = targetNode;
        }
 
        // 2
        private void treeView1_ItemDrag(object sender, ItemDragEventArgs e)
        {
            DoDragDrop(e.Item, DragDropEffects.Move);
        }
 
        // 3
        private void treeView1_DragDrop(object sender, DragEventArgs e)
        {
            Point pt = treeView1.PointToClient(new Point(e.X, e.Y));
            TreeNode targetNode = treeView1.GetNodeAt(pt);
            string sText = oTreeNodeBase.Text;
 
 
            // suppression
            treeView1.Nodes.Remove(oTreeNodeBase);
            // ajout
            targetNode.Nodes.Add(sText);
 
          
        }
 
   
    }
}
 
Publicité
Retour à l'accueil
Partager cet article
Repost0
Pour être informé des derniers articles, inscrivez vous :
Commenter cet article