Cycle de progression Faire (quelque chose qui marche) -> comprendre ce que l’on fait/comment cela marche -> pousser plus loin les notions
| 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); } } } |