Foros del Web » Programación para mayores de 30 ;) » .NET »

[SOLUCIONADO] problemas con evento SelectedIndexChanged

Estas en el tema de problemas con evento SelectedIndexChanged en el foro de .NET en Foros del Web. Hola a todos, Quiero eliminar del listbox pero cuando elimino el que se encuentra seleccionado la ventana se ejecuta 2 veces, lo elimina solo que ...
  #1 (permalink)  
Antiguo 12/01/2018, 02:56
 
Fecha de Ingreso: agosto-2010
Ubicación: santiago, CHILE
Mensajes: 535
Antigüedad: 7 años, 8 meses
Puntos: 9
problemas con evento SelectedIndexChanged

Hola a todos,

Quiero eliminar del listbox pero cuando elimino el que se encuentra seleccionado la ventana se ejecuta 2 veces, lo elimina solo que el MessageBox se ejecuta 2 veces y es porque dentro del if hace un cambio y lo vuelve a mostrar ya que uso el evento SelectedIndexChanged.

como puedo hacer para que no se ejecute de nuevo la idea es que aparezca solo una vez capture la opcion y elimine sin mostrar de nuevo la ventana


Código c#:
Ver original
  1. private void listboxUsu_SelectedIndexChanged(object sender, EventArgs e)
  2.         {
  3.             DialogResult question = MessageBox.Show("¿Esta seguro de quitar de la lista?", "Eliminar", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
  4.  
  5.             if (question.ToString() == "Yes")
  6.             {
  7.                 listboxUsu.Items.Remove(listboxUsu.SelectedItem);
  8.  
  9.             }
  10.         }

  #2 (permalink)  
Antiguo 12/01/2018, 13:04
 
Fecha de Ingreso: octubre-2009
Mensajes: 285
Antigüedad: 8 años, 6 meses
Puntos: 25
Respuesta: problemas con evento SelectedIndexChanged

es logico, por cada vez que el indice cambia preguntará si quiere eliminar el seleccionado, es una redundancia ciclica y no le veo sentido a eliminar el seleccionado, entonces ¿para que lo seleccionas?
  #3 (permalink)  
Antiguo 13/01/2018, 10:41
 
Fecha de Ingreso: agosto-2010
Ubicación: santiago, CHILE
Mensajes: 535
Antigüedad: 7 años, 8 meses
Puntos: 9
Respuesta: problemas con evento SelectedIndexChanged

ya lo solucione, pongo el código por si a alguien le sirve

Código C#:
Ver original
  1. private void listboxUsu_Click(object sender, EventArgs e)
  2.         {            
  3.             if (listboxUsu.SelectedItem != null)
  4.             {
  5.                 DialogResult question = MessageBox.Show("¿Esta seguro de quitar de la lista?", "Eliminar", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
  6.  
  7.                 if (question.ToString() == "Yes")
  8.                 {
  9.  
  10.                     string curItem = listboxUsu.SelectedItem.ToString();
  11.                     string[] item = curItem.Split('-');
  12.  
  13.                     CUsuario.EliminarUsuario(item[0].Trim(), this.rut);                  
  14.  
  15.                 }
  16.             }          
  17.         }




La zona horaria es GMT -6. Ahora son las 23:13.