Los foros del Guille

Si no encuentras respuesta, puedes buscar en el sitio del Guille

Google
 

MKN Reservas (Maro - Kayak Nerja)


Kayak Maro - Rutas y alquiler de kayak y tabla
Selecciona el foro y pulsa en mostrar:     Mostrar 
De tu inter�s (algunos de los avisos publicados)

01/feb./2019

Los moderadores, MVP y administradores podrán seguir editando, respondiendo o creando nuevos mensajes

Con idea de que puedan ayudar a responder e ir cerrando mensajes ;-)

  Foro: .NET VB Cantidad:  Desde:   Hasta:    Aplicar   Responder 
Respuestas a: 51805 - For Each termina antes de tiempo
IDAsuntoFechaNick 
51805 For Each termina antes de tiempo12/02/10 22:32Mauro Luque   
Hola a todos, les explico mi situación:

Estoy haciendo un User Control y dentro del mismo hay una serie de botones personalizados (que son otros User Control) que mediante código, los muevo individualmente a un panel donde se pueden mover con el mouse. En este panel también hay un PictureBox.
Agregué una funcionalidad para retornar todos los botones, que están en el panel, a su posición original, para esto use un For Each, este es el código en VB.net 2008:

Private Sub
     ResetearTodo(ByVal elControl As Control) 'elControl es el
     contenedor de los demás controles
        Dim ctrl As Control
        For Each ctrl In elControl.Controls
            If TypeOf
                 (ctrl) Is EllipticalButton.EllipticalButton Then 'EllipticalButton es el
                 control personalizado que se mueve y tiene que retornar a su posición original
                controlSeleccionado = CType(ctrl,
                     EllipticalButton.EllipticalButton)
                
                ResetearPosicion() 'Esta funcion utiliza a controlSeleccionado
            End If
        Next
    End Sub

El problema es que sólo la mitad de los EllipticalButton son movidos, haciendo un paso a paso por el For Each, puedo ver que cuando llega al PictureBox, sale del bucle, aunque no sé si eso tendrá algo que ver.
Anteriormente no usaba un panel, usaba el PictureBox solo y andaba bien, pero tengo que usar el panel si o si ahora, alguien tiene idea de que puede estar pasando?

[Editado: Mauro Luque, 12/02/2010 22:33:10]
[Mauro Luque, 12/02/2010 22:36:07]
IDAsuntoFechaNick 
52062 Re: For Each termina antes de tiempo (Resp: 51805)07/03/10 02:11luis1952   
Hola.
El problema puede estar en que al quitar el control dentro del bucle, elControl.Controls tiene uno menos. El boton siguiente pasa acupar el lugar del borrado por lo que se lo salta.

Si es esto deberia saltarse tantos como mueve


Si esta respuesta resuelve tu duda, por favor pulsa en la de este mensaje. Gracias.
IDAsuntoFechaNick 
52063 Re: For Each termina antes de tiempo (Resp: 52062)07/03/10 03:45Mauro Luque   
Ya entendí!! Muchas gracias, igual ya cambié la forma de meter y sacar los botones jeje pero esto sirvió para aprender un poco mas!
Un saludo!


Si esta respuesta resuelve tu duda, por favor pulsa en la de este mensaje. Gracias.

 
(c) Guillermo 'guille' Som, 2005-2026  - foros.elGuille v1.0.6.3 (01/Jun/2021 12:45 GMT +2)  - (ASP.NET v4.0.30319.42000)
 
La hora GMT del servidor es: 10/06/2026 11:56:30 GMT