Arrastrar y soltar en listview

21/04/2006 - 14:17 por Roberto Palacios | Informe spam
Tengo varios listView q representan el trabajo de varias maquinas. Quiero
poder pasar algun trabajo de una maquina a otra arrastrando y soltando. El
codigo que uso para cada máquina es este:

//Eventos de arrastrar y colocar de la máquina 14

private void lB14_MouseDown(object sender,
System.Windows.Forms.MouseEventArgs e)

{

lB14.DoDragDrop(lB14.SelectedItem.ToString(),DragDropEffects.Move|DragDropEffects.All);

}

private void lB14_DragEnter(object sender,
System.Windows.Forms.DragEventArgs e)

{

if (e.Data.GetDataPresent(DataFormats.Text))

e.Effect = DragDropEffects.Copy;

else

e.Effect = DragDropEffects.None;

}

private void lB14_DragDrop(object sender, System.Windows.Forms.DragEventArgs
e)

{

this.lB14.Items.Add(e.Data.GetData(DataFormats.Text).ToString());

}



Problemas:
-paso de uno a otro pero no desaparece la tarea del listview origen
-si paso más de un elemento de un mismo listview a otro siempre me copia el
primero pasado, no me copia los siguientes que quiero pasar

Por ahora creo que si me solucionais esto perfecto.

Un saludo y gracias por todo
Roberto
 

Leer las respuestas

#1 Diego \(DCD\)
21/04/2006 - 20:08 | Informe spam
Hola

private void lB14_DragDrop(object sender, System.Windows.Forms.DragEventArgs
e)

{

this.lB14.Items.Add(e.Data.GetData(DataFormats.Text).ToString());


lOrigen.Items.Remove ( e.Data.GetData(DataFormats.Text)) -> o algo así,
pero por ahí van los tiros.
}



Un saludo y buen fin de semana.

"Roberto Palacios" escribió en el mensaje
news:4448cd4f$
Tengo varios listView q representan el trabajo de varias maquinas. Quiero
poder pasar algun trabajo de una maquina a otra arrastrando y soltando. El
codigo que uso para cada máquina es este:

//Eventos de arrastrar y colocar de la máquina 14

private void lB14_MouseDown(object sender,
System.Windows.Forms.MouseEventArgs e)

{

lB14.DoDragDrop(lB14.SelectedItem.ToString(),DragDropEffects.Move|DragDropEffects.All);

}

private void lB14_DragEnter(object sender,
System.Windows.Forms.DragEventArgs e)

{

if (e.Data.GetDataPresent(DataFormats.Text))

e.Effect = DragDropEffects.Copy;

else

e.Effect = DragDropEffects.None;

}

private void lB14_DragDrop(object sender,
System.Windows.Forms.DragEventArgs e)

{

this.lB14.Items.Add(e.Data.GetData(DataFormats.Text).ToString());

}



Problemas:
-paso de uno a otro pero no desaparece la tarea del listview origen
-si paso más de un elemento de un mismo listview a otro siempre me copia
el primero pasado, no me copia los siguientes que quiero pasar

Por ahora creo que si me solucionais esto perfecto.

Un saludo y gracias por todo
Roberto


Preguntas similares