C# TreeView Sürükle Bırak

Yazar: Naim Seyrek Yorum Yok »

TreeView kontrolündeki TreeNode kontrollerinin sürükle - bırak yöndetmiyle nasıl taşındığına göz atacağız.

1. TreeView kontrolünü sürükle bırak işlemine uygun hale getirelim.

treeView1.AllowDrop = True;

2.TreeView kontrolünün DragEnter olayı metodu içerisinde sürükle bırak efekti belirtilir.

e.Effect = DragDropEffects.Move;

3.TreeView ItemDrag olayı metodunda, DragDrop olayını tetikliyoruz.


if (e.Button == MouseButtons.Left)
DoDragDrop(e.Item, DragDropEffects.Move);


4.
Son olarak TreeView kontrolünün DragDrop olayı metodu içerisinde, taşınmak istenilen TreeNode kontrolünün taşıma işlemi gerçekleştirilir.

TreeNode yeniNode;
if( e.Data.GetDataPresent("System.Windows.Forms.TreeNode", false))
{
Point pt;
TreeNode hedefNode;
pt = treeView1.PointToClient(new Point(e.X, e.Y));
hedefDugum= treeView1.GetNodeAt(pt);
yeniDugum= (TreeNode) e.Data.GetData("System.Windows.Forms.TreeNode");
if(!destinationNode.Equals(yeniDugum))
{
//Taşınan TreeNode kontrolü yeni yerine ekleniyor.
hedefDugum.Nodes.Add((TreeNode) yeniDugum.Clone());
hedefDugum.Expand();
//Taşınan TreeNode kontrolü eski yerinden siliniyor.
yeniDugum.Remove();
}
}

Motor: Wordpress - Dizayn: Ndesign-Studio
Makaleler RSS Yorumlar RSS Giriş