Ver Mensaje Individual
  #1 (permalink)  
Antiguo 06/07/2004, 17:35
turbo
 
Fecha de Ingreso: mayo-2004
Ubicación: cordoba
Mensajes: 27
Antigüedad: 20 años
Puntos: 0
De acuerdo listview, el evento SelectedIndexChanged y una solucion extraña.

hace poco relice una pregunta de por que no funcionaba y daba error el procedimiento para obtener un elemento del listview usando las teclas de desplazamiento.

Private Sub ListaSelec_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListView2.SelectedIndexChanged
If Me.ListView2.Items.Count <= 0 Then Exit Sub

MiTextBox1.Text = ListView2.FocusedItem.SubItems(3).Text()
End Sub

y el programa se detenetina. Mi primera solucion fue utilizar el manejador de errores con el try y cach

try
MiTextBox1.Text = ListView2.FocusedItem.SubItems(3).Text()
Finally
Beep() ' Beep after error processing.
End Try

Al utilizar las flechas de desplazamiento para moverme entre las disstintas filas la primera vez obtenia el item pero la segunda se producia el error y se terminaba la ejecucion

Buscando .... encontre que el problema del listview es cuando se pierde el foco, entonces el focuseditem da error ????.

se meocurrio cambiar el try por On Error GoTo, y me di con la sorpresa de que me devuelve el elemento y sale por error.

Como es posible esto ???????????????

En fin probe lo siguiente

Private Sub ListaSelec_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ListView2.SelectedIndexChanged
If Me.ListView2.Items.Count <= 0 Then Exit Sub
On Error GoTo salir
PosLista = CInt(Me.ListView2.FocusedItem.Index)
MiTextBox1.Text = ListView2.FocusedItem.SubItems(3).Text()
salir:
Beep()
End Sub

Saludos