Listbox Seleccin Multiple

Buenos das.

Tengo una aplicacin con dos listbox ambas con una columna y el objetivo es hacer una seleccin mltiple de filas de la listbox1 y con un botn copiarlas las filas seleccionadas a la listbox 2. En una listbox con seleccin simple se usa el listindex para referenciar la fila seleccionada, pero con seleccin multiples listindex siempre me devuelve la primera fila seleccionada. Lo solucion recorriendo la listbox1 y guardando en un arreglo la posicion de las filas seleccionadas para luego recorrer el arreglo y copiar las filas al listbox2, pero se me ocurre habr una forma mas directa.

Gracias por su ayuda.

Claro!

Recorre las filas del primero de los listbox utilizando el mtodo Selected con un fornext en orden inverso (es ms rpido). Si dicha fla est seleccionadala copias. Por ejemplo:

[code]dim upperLimit as integer = ListBox1.Listcount -1

For n as integer = upperLimit downTo 0

If ListBox1.Selected(n) then ListBox2.addRow( ListBox1.cell(n) )

Next[/code]

Creo que en la documentacin de ListBox (puedes consultarla desde el IDE) tambin se incluye un ejemplo de esto mismo.

Javier

No sólo es más rápido, sino que si además quieres borrarlas (porque las estés “moviendo” a otro listbox, como en muchos programas donde añades de izquierda a derecha) puedes seguir contando hacia abajo después de borrar la fila sin riesgo de que descuadren los conteos.