DRAGDROP ENTRE 2 DATAGRIDVIEW
Pessoal,
Alguém possui um exemplo de código Drag and Drop que funcione transferindo dados entre 02 Datagridview.
Andei pesquisando na net mas não encontrei nada que pudesse aproveitar. Para ser mais preciso quero transferir as informações de uma célula do datagridview1 para uma célula do datagridview2.
Desde já agradeço pela atenção
Alguém possui um exemplo de código Drag and Drop que funcione transferindo dados entre 02 Datagridview.
Andei pesquisando na net mas não encontrei nada que pudesse aproveitar. Para ser mais preciso quero transferir as informações de uma célula do datagridview1 para uma célula do datagridview2.
Desde já agradeço pela atenção
Olha nunca usei isso, mas vi esse código que pode ajudar, tá em c# mas acho que é fácil mudar pro VB, não tem nada de difÃcil no código, basicamente ifs e eventos criados.
http://stackoverflow.com/questions/11507321/in-c-is-there-a-way-to-drag-a-datagridview-cells-content-to-another-cell
Esse parece até mais simples
http://stackoverflow.com/questions/14199510/drag-drop-between-datagridview
Esse aqui faz transferência de múltiplas linhas pelo botão esquerdo do mouse
http://www.codeproject.com/Tips/338594/Drag-drop-multiple-selected-rows-of-datagridview-w
o google tá cheio de exemplos.
http://stackoverflow.com/questions/11507321/in-c-is-there-a-way-to-drag-a-datagridview-cells-content-to-another-cell
Esse parece até mais simples
http://stackoverflow.com/questions/14199510/drag-drop-between-datagridview
Esse aqui faz transferência de múltiplas linhas pelo botão esquerdo do mouse
http://www.codeproject.com/Tips/338594/Drag-drop-multiple-selected-rows-of-datagridview-w
o google tá cheio de exemplos.
Então,
Só pode ser via Drag ?
Tenho esse códgio que se vc arrastar um arquivo para o textbox ele cola o caminho do arquivo.
Private Sub TextBox1_DragDrop(sender As Object, e As DragEventArgs) Handles TextBox1.DragDrop
Dim files As String() = CType(e.Data.GetData(DataFormats.FileDrop), String())
For Each file As String In files
TextBox1.Text = file
Next
e.Effect = DragDropEffects.All
End Sub
Private Sub TextBox1_DragEnter(sender As Object, e As DragEventArgs) Handles TextBox1.DragEnter
TextBox1.Text = [Ô][Ô]
If e.Data.GetDataPresent(DataFormats.FileDrop, False) = True Then
e.Effect = DragDropEffects.All
End If
End Sub
[ô]deixar a propriedade allowdrop do textbox como true
Mas não consegui adaptar entre controles também, isso me interessa.
Só pode ser via Drag ?
Tenho esse códgio que se vc arrastar um arquivo para o textbox ele cola o caminho do arquivo.
Private Sub TextBox1_DragDrop(sender As Object, e As DragEventArgs) Handles TextBox1.DragDrop
Dim files As String() = CType(e.Data.GetData(DataFormats.FileDrop), String())
For Each file As String In files
TextBox1.Text = file
Next
e.Effect = DragDropEffects.All
End Sub
Private Sub TextBox1_DragEnter(sender As Object, e As DragEventArgs) Handles TextBox1.DragEnter
TextBox1.Text = [Ô][Ô]
If e.Data.GetDataPresent(DataFormats.FileDrop, False) = True Then
e.Effect = DragDropEffects.All
End If
End Sub
[ô]deixar a propriedade allowdrop do textbox como true
Mas não consegui adaptar entre controles também, isso me interessa.
Desculpa pessoal,
Mas eu não conheço nada das propriedades de DragDrop. E realizando testes nenhum dos códigos postados funcionou como gostaria. Algum outro?
Obrigado.
Mas eu não conheço nada das propriedades de DragDrop. E realizando testes nenhum dos códigos postados funcionou como gostaria. Algum outro?
Obrigado.
Alguém sabe me informar como pegar as coordenadas de linha e coluna passando somente o cursor pela coordenada do datagridview?
Ele tem essas propriedades
Dim y As Integer =GRID.Top + GRID.GetRowDisplayRectangle(ROW, False).Top
Dim x As Integer = GRID.GetColumnDisplayRectangle(COL, False).Left
No evento MouseHover ou MouseMove capture.
Dim y As Integer =GRID.Top + GRID.GetRowDisplayRectangle(ROW, False).Top
Dim x As Integer = GRID.GetColumnDisplayRectangle(COL, False).Left
No evento MouseHover ou MouseMove capture.
Nilson,
O que seria Row e Col na passagem dos parâmetros nos métodos?
O que seria Row e Col na passagem dos parâmetros nos métodos?
Quando coloquei que seria pelo cursor é que não haverá o clique sobre o DataGridview, eu consegui criar o efeito de arrastar e soltar, porém, não conseguir determinar qual a linha e coluna que os dados serão inseridos. Por isso preciso saber como identificar a linha e coluna que será inserido os dados que estou arrastando.
Desde já agradeço.
Desde já agradeço.
Consegui identificar a linha e coluna através do HitTest. Só que apareceu outro problema. Nas extremidades do Datagridview não retorna a linha e coluna.
Utilizei o seguinte código :
Dim Hit As DataGridView.HitTestInfo = .HitTest(e.X, e.Y)
If Hit.Type = DataGridViewHitTestType.Cell Then
ClickedCell = .Rows(Hit.RowIndex - 2).Cells(Hit.ColumnIndex)
End If
If (ClickedCell IsNot Nothing) Then
End If
Como já disse se eu levar o cursor na extremidade do datagridview, principalmente na parte de baixo, a variável ClickeCell retorna [Ô]nothing[Ô]. Alguém poderia me dizer o que seria isso??
Utilizei o seguinte código :
Dim Hit As DataGridView.HitTestInfo = .HitTest(e.X, e.Y)
If Hit.Type = DataGridViewHitTestType.Cell Then
ClickedCell = .Rows(Hit.RowIndex - 2).Cells(Hit.ColumnIndex)
End If
If (ClickedCell IsNot Nothing) Then
End If
Como já disse se eu levar o cursor na extremidade do datagridview, principalmente na parte de baixo, a variável ClickeCell retorna [Ô]nothing[Ô]. Alguém poderia me dizer o que seria isso??
Citação:O que seria Row e Col na passagem dos parâmetros nos métodos?
é o numero da row e o numero col.
linha e coluna.
Se puder mandar o formulario ou exemplo dele posso dar uma olhada e quem sabe ajudar.
Nilson,
Obrigado. Segue link para baixar um teste que estava desenvolvendo. Não é realmente o que estou desenvolvendo, mas, o objetivo é colocar as informações de uma célula de um datagridview em outra célula do outro datagridview.
http://www.mediafire.com/download/8oskw9ala39zwi7/Teste.rar
Obrigado. Segue link para baixar um teste que estava desenvolvendo. Não é realmente o que estou desenvolvendo, mas, o objetivo é colocar as informações de uma célula de um datagridview em outra célula do outro datagridview.
http://www.mediafire.com/download/8oskw9ala39zwi7/Teste.rar
Tópico encerrado , respostas não são mais permitidas