none
Como quitar el borde de un button, cuando toma el foco o es clikeado. RRS feed

  • Pregunta

  • Hola, me gustaria eliminar el borde que aparece dentro de un boton cuando este toma el foco o se le da click como se muestra en la imagen adjunta. El estilo del button es FlatStyle. Gracias.

    martes, 20 de junio de 2017 2:15

Respuestas

  • Hola @Jose Alrey

    Prueba con esto

    Public Shared Sub ChangeControlStyles(ctrl As Control, flag As ControlStyles, value As Boolean)
                Dim method As MethodInfo = ctrl.GetType().GetMethod("SetStyle", BindingFlags.Instance Or  BindingFlags.NonPublic)
                If method IsNot Nothing Then
                    method.Invoke(ctrl, new Object()
     Dim value As flag,
     End if
    )

    End Sub


    Espero la información brindada te sirva de utilidad.

    Saludos.


    Pedro Ávila
    "El hombre sabio querrá estar siempre con quien sea mejor que él."
    Lima - Perú


    martes, 20 de junio de 2017 3:15
  • Hola

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles btnPrueba.Click
            ChangeControlStyles(btnPrueba, ControlStyles.Selectable, False)
        End Sub
    
        Public Shared Sub ChangeControlStyles(ctrl As Control, flag As ControlStyles, value As Boolean)
                Dim method As MethodInfo = ctrl.GetType().GetMethod("SetStyle", BindingFlags.Instance Or  BindingFlags.NonPublic)
                If method IsNot Nothing Then
                    method.Invoke(ctrl, new Object() {flag, value})
                End if
        End Sub

    Saludos


    Pedro Ávila
    "El hombre sabio querrá estar siempre con quien sea mejor que él."
    Lima - Perú

    miércoles, 21 de junio de 2017 3:59

Todas las respuestas

  • FaltStyle es la propriedad  o sea que tu tienes la propiedad FlatStyle y le pueses asignar el atributo Flap, Standard, Popup, System.  button1.FlattStyle.Standard que viene por defecto lo cambias por lo que deseas Botton1.FlatStyle.Popup  por ejemplo, en el comienzo del evento Click del Button1

    Edito por si lo que quieres es solamente quitar el borde en ese caso;

    Button1.FlatAppearance.BorderSize = 0

    Pra reasignar el borde le asignas  Button1.FlatAppearance.BorderSize = 1 (por defecto)

    • Editado Marcelo PF martes, 20 de junio de 2017 2:59
    martes, 20 de junio de 2017 2:34
  • Hola @Jose Alrey

    Prueba con esto

    Public Shared Sub ChangeControlStyles(ctrl As Control, flag As ControlStyles, value As Boolean)
                Dim method As MethodInfo = ctrl.GetType().GetMethod("SetStyle", BindingFlags.Instance Or  BindingFlags.NonPublic)
                If method IsNot Nothing Then
                    method.Invoke(ctrl, new Object()
     Dim value As flag,
     End if
    )

    End Sub


    Espero la información brindada te sirva de utilidad.

    Saludos.


    Pedro Ávila
    "El hombre sabio querrá estar siempre con quien sea mejor que él."
    Lima - Perú


    martes, 20 de junio de 2017 3:15
  • Hola Pedro como implemento el método que compartiste?, saludos
    martes, 20 de junio de 2017 7:37
  • Hola

    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles btnPrueba.Click
            ChangeControlStyles(btnPrueba, ControlStyles.Selectable, False)
        End Sub
    
        Public Shared Sub ChangeControlStyles(ctrl As Control, flag As ControlStyles, value As Boolean)
                Dim method As MethodInfo = ctrl.GetType().GetMethod("SetStyle", BindingFlags.Instance Or  BindingFlags.NonPublic)
                If method IsNot Nothing Then
                    method.Invoke(ctrl, new Object() {flag, value})
                End if
        End Sub

    Saludos


    Pedro Ávila
    "El hombre sabio querrá estar siempre con quien sea mejor que él."
    Lima - Perú

    miércoles, 21 de junio de 2017 3:59
  • Hola

    ¿No se supone que tenías que marcar mi respuesta?

    Saludos.


    Pedro Ávila
    "El hombre sabio querrá estar siempre con quien sea mejor que él."
    Lima - Perú

    • Marcado como respuesta Jose Alrey viernes, 23 de junio de 2017 23:31
    • Desmarcado como respuesta Jose Alrey viernes, 23 de junio de 2017 23:32
    miércoles, 21 de junio de 2017 5:19