2016-02-02 1 views
0

У меня есть DataGridView, который имеет строки, но не использует полный выбор строки. Способ, которым я выбираю элементы в DataGridView, - это только индивидуальное значение столбца для этой конкретной строки. Например. DataGridView1.Rows(e.RowIndex).Cells(e.ColumnIndex).Value.ToStringПеретащите элемент из элемента управления Datagridview в элемент управления TreeView

Я пытаюсь выяснить, как я могу это сделать, когда я нажимаю в First ColumnValue в строке 1 и перетаскиваю его в элемент управления TreeView, он создаст NODE для любого значения, которое было перетащено из столбца строки 1 1

+0

Для начала пожалуйста отправьте соответствующий код и где вы застряли, и мы будем рады помочь. *** Как я могу это сделать ***, мы здесь не для того, чтобы запрограммировать его для вас, а скорее для помощи в конкретной проблеме. – Codexer

ответ

-1

После того, как я сделал больше копания, я смог найти то, что искал. Я понимаю, что переполнение стека здесь не для того, чтобы написать программу для меня, однако переполнение стека было построено в концепции «помощи» с подталкиванием людей в правильное направление, а не «троллинг»

Вот код, который я нашел и изменил чтобы получить его на работу

Поскольку мой TreeView построен динамически, мне пришлось вручную установить addhandler. Обычно, если у вас есть TreeView уже, вы могли бы просто использовать ручки, как показано с DataGridView сопротивления

AddHandler DirTree.DragEnter, AddressOf treeView1_DragEnter 
    AddHandler DirTree.DragDrop, AddressOf treeView1_DragDrop 


Private dragedItemText As String 
    Private Sub treeView1_DragDrop(ByVal sender As Object, ByVal e As DragEventArgs) 
     Dim pt As Point 
     Dim destinationNode As TreeNode 
     pt = DirTree.PointToClient(New Point(e.X, e.Y)) 
     destinationNode = DirTree.GetNodeAt(pt) 
     Dim dragedNode As New TreeNode() 
     dragedNode.Text = dragedItemText 
     lblTitle.Text = dragedItemText 

     destinationNode.Nodes.Add(dragedNode) 
     dragedItemText = "" 
    End Sub 

    Private Sub treeView1_DragEnter(ByVal sender As Object, ByVal e As DragEventArgs) 
     e.Effect = DragDropEffects.Copy 
    End Sub 

    Private Sub dataGridView1_MouseDown(ByVal sender As Object, ByVal e As MouseEventArgs) Handles DataGridView1.MouseDown 
     If e.Button = MouseButtons.Left Then 

      dragedItemText = DataGridView1.Rows(DataGridView1.CurrentCell.RowIndex).Cells(0).Value.ToString 
      'Cells(0) for first column 
      DataGridView1.DoDragDrop(dragedItemText, DragDropEffects.Copy) 
     End If 
    End Sub