Hola Claudio Estoy jugandon tu problema, mientras tanto te doy una sugenrencia. No mandes un mail a la lista sobre otro existente que no tiene que ver con tu problema, lo mas sano es que crees un nuevo hilo de mensajes con un asunto acorde. ( solo una sugerencia ) Si veo como salir de tu enredo te cuento.
Daniel El 14 de octubre de 2011 13:12, Claudio Speroni <[email protected]>escribió: > Estimados, estoy trabajando en VS 2008 y necesito hacer lo siguiente y no > sé cómo resolverlos, por eso les pido ayuda > > > > Tengo un control Texbox que necesito que cada vez que haga foco en él se > abra un formulario, esto lo hago de la siguiente manera > > Dentro de un control propio heredado de Windows.forms.textbox, en el método > GotFocus abro un formulario (frmCaptura) > > **** ** > > Public Class tb**** > > Inherits System.Windows.Forms.TextBox**** > > ** ** > > Private Sub tb_GotFocus(ByVal sender As Object, ByVal e As > System.EventArgs) Handles Me.GotFocus**** > > Dim frm As New frmCaptura**** > > Try**** > > frm.showdialog(Me)**** > > Catch ex As Exception**** > > Throw ex**** > > End Try**** > > End Sub**** > > End Class > > ** ** > > Hasta acá todo bien, el problema se me presenta cuando cierro el formulario > frmCaptura y vuelve a tomar foco el Textbox ya que se vuelve a ejecutar el > método GotFocus y abre nuevamente el formulario > > ** ** > > Probé creando una variable privada para saber si ya tomo foco alguna vez el > TextBox poniéndola en true en el gotFocus y en False en el LostFocus, acá se > me presenta otro problema, > > Cuando abro el formulario en el gotfocus, también se ejecuta el evento > LostFocus ya que el control pierde foco y la variable se setea en false y > con esto volvemos a empezar, cuando cierro el formulario se vuelve a > ejecutar el método Gotfocus y abre nuevamente el formulario frmCaptura, > > > > Public Class tb**** > > Inherits System.Windows.Forms.TextBox**** > > ** ** > > Private blnYaAbrio As Boolean = False**** > > Private Sub tb_GotFocus(ByVal sender As Object, ByVal e As > System.EventArgs) Handles Me.GotFocus**** > > Dim frm As New frmCaptura**** > > Try**** > > If Not blnYaAbrio Then**** > > blnYaAbrio = True**** > > frm.showdialog(Me)**** > > End If**** > > Catch ex As Exception**** > > Throw ex**** > > End Try**** > > End Sub**** > > ** ** > > Private Sub tb_LostFocus(ByVal sender As Object, ByVal e As > System.EventArgs) Handles Me.LostFocus**** > > Try**** > > blnYaAbrio = False**** > > Catch ex As Exception**** > > Throw ex**** > > End Try**** > > End Sub**** > > End Class > > ** ** > > > > > > Es decir estoy en un bucle y no sé cómo resolverlo > > ** ** > > Espero haber sido claro, cualquier cosa pregunten así me ayudan a resolver > este problema > > ** ** > > > > > > Gracias de antemano > > Claudio > > -- *Daniel A. Calvin* Cooperator Team Member Microsoft Certified Professional
