Witam, mam problem z drag and drop w TreeView

                while (reader.Read())
                {
                    connection2.Open(); 
                    reader2 = cmd2.ExecuteReader();

                    TreeViewItem group = new TreeViewItem();
                    group.IsExpanded = true;

                    StackPanel stack = new StackPanel();
                    stack.Orientation = Orientation.Horizontal;

                    Image image = new Image();
                    image.Source = new BitmapImage
                        (new Uri("pack://application:,,/Images/group.png"));

                    Label lbl = new Label();
                    lbl.Content = reader["NAME"];

                    stack.Children.Add(image);
                    stack.Children.Add(lbl);

                    int usr_id;
                    int gr_id;

                    gr_id = Convert.ToInt32(reader["ID"]);
                    
                    group.Header = stack;

                     while (reader2.Read())
                     {
                        usr_id = Convert.ToInt32(reader2["GRPID"]);
                        if (gr_id == usr_id)
                        {

                            TreeViewItem users = new TreeViewItem();
                           

                    StackPanel stack1 = new StackPanel();
                    stack1.Orientation = Orientation.Horizontal;

                    Image image1 = new Image();
                    image1.Source = new BitmapImage
                        (new Uri("pack://application:,,/Images/User.png"));

                    Label lbl1 = new Label();
                    lbl1.Content = reader2["SYM"];

                    stack1.Children.Add(image1);
                    stack1.Children.Add(lbl1);

                            users.Header = stack1;

                            group.Items.Add(users);
                        }
                        
                    }
                  
                    connection2.Close();
                    treeView1.Items.Add(group);

                 


                }

Potrzebuję zrobić drag and drop który będzie mi przenosił użytkowników tylko między grupami ( nie będzie możliwości przenoszenia grupy do innej grupy i użytkownika do użytkownika)

Z góry dziękuje

PiK