none
Al cargar formulario no enfoca ni desmarca RRS feed

  • Pregunta

  • Buenas ; un tema curioso: 

    Tengo mi mdi contenedor Padre y mi form Hijo, lo llamo y normal se registra todo ok, el tema es que le puse txtid.focus() y radiobutton.checked=false en el form_load

    sin emargo al llamar el radio sale activado y el txid no tiene el foco entonces quiero que no tenga nada marcado y el foco en el textbox

    Gracias

    el radiobutton en diseño esta false el checked

    domingo, 28 de agosto de 2016 5:13

Respuestas

  • Efectivamente, tienes un databinding posterior a haber puesto el foco en el Form_Load. Prueba a cambiar el foco en el evento Form_Activated, para asegurarte de que se hace después de haber aplicado todos los cambios debidos al binding.
    domingo, 28 de agosto de 2016 12:59

Todas las respuestas

  • DEBERÍA de funcionar. La única razón que se me ocurre para que no salgan bien el radiobutton y el foco es que se ejecute algo más de código después del form_load que les vuelva a cambiar el valor. Por ejemplo, podría haber algún databinding, o algún otro evento que se dispare después de haber cargado el form.
    domingo, 28 de agosto de 2016 11:54
  • soo tengo esto:

    Private Sub Asistencia_Load(sender As Object, e As EventArgs) Handles MyBase.Load
            Me.txtDNI.Focus()
            Cargar()
        End Sub
    Private Sub Cargar()
            Try
                Using cnx As New SqlConnection(ConfigurationManager.ConnectionStrings("cnxString").ToString())
                    oCommandBuilder = New SqlCommandBuilder(Me.oDataAdapter)
                    oDataAdapter = New SqlDataAdapter("SELECT .....", cnx)
                    oDataTable = New DataTable
                    oDataAdapter.Fill(oDataTable)
                    dgvAsistencia.DataSource = oDataTable
                    Me.lblReg.Text = String.Format("Total de Registros: {0}", oDataTable.Rows.Count)
                End Using
            Catch ex As Exception
                MsgBox("Error : " & ex.Message)
            End Try
        End Sub
    Asi que bueno el radiobutton lo saque pork nada 


    domingo, 28 de agosto de 2016 12:35
  • Efectivamente, tienes un databinding posterior a haber puesto el foco en el Form_Load. Prueba a cambiar el foco en el evento Form_Activated, para asegurarte de que se hace después de haber aplicado todos los cambios debidos al binding.
    domingo, 28 de agosto de 2016 12:59
  • Javier RoCas,


    Aunque es casi seguro que lo que te propone Alberto funcione, la única pega que podría tener la solución es que el control obtendrá el foco por cada vez que el formulario pase a ser el activo, por ejemplo, si el formulario hace una llamada a la clase MessageBox tras cerrarse la ventana de mensaje el formulario volverá a ser el activo y por tanto el control volverá a obtener el foco.

    Quizá una opción sea ordenar el foco en el evento Shown (del formulario) que se desencadena cuando el formulario se ejecuta por primera vez o definir el control como activo del formulario:

    Private Sub Asistencia_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    
            Me.ActiveControl = Me.txtDNI
    End Sub



    Espero que la información proporcionada te haya sido de utilidad, quedo atento a tus comentarios.

    domingo, 28 de agosto de 2016 16:41
  • Hola William podrias revisar el link sobre las condiciones aun no he marcado la respuesta en esa parte:;

    https://social.msdn.microsoft.com/Forums/es-ES/4ba17607-744d-46e5-8921-337c93f32924/condiciones-de-registro-no-se-a-que-hilo-puede-ser-sql-o-vbasic-winforms?forum=winformses

    Voy a ver respecto a problema de foco

    lunes, 29 de agosto de 2016 1:14
  • Gracias por responder. Es raro algunas veces si enfoca apensar del cargar y otras como este caso no en fin pero ya esta solucionado gracias, es como otro form que estoy cargando el dtagrid y no quiere, pero ya luego veo. Primero me centro en el principal.
    lunes, 29 de agosto de 2016 1:36