none
Diseño de Menustrip (Colores) RRS feed

  • Pregunta

  • Hola buenos días, la preguntas es la siguiente: tengo un control menustrip y le he asignado los colores de fondo y los colores de la fuente con el diseñador, el problema es que cuando la aplicación se esta ejecutando y se pone el foco sobre el control y se interactúa con el, esté  cambia de color, y ya no se distinguen las LETRAS.

    Lo que quiero es controlar esos colores para dar una mejor vista a la aplicación, anexo una imagen del problema:

    Cuando selecciono el menu la letra se queda blanca, quiero que se ponga negra, y quiero cambiar el color azul claro.

    Quiero que el color de la letra no se quede blanco para que se distinga y me gustaría también cambiar el color azul claro por otro.

    De antemano MUCHAS GRACIAS POR SU AYUDA.

    "LA DISCIPLINA SIEMPRE VENCE A LA INTELIGENCIA"

    • Cambiado Enrique M. Montejo miércoles, 15 de marzo de 2017 7:42 Pregunta relacionada con controles de Windows Forms.
    lunes, 13 de marzo de 2017 16:03

Todas las respuestas

  • Hola:
    ¿No tendras en configuracion - contraste alto, seleccionada alguna opcion?
    En W10 la imagen seria esta

    Un saludo desde Bilbo
    Carlos
    • Propuesto como respuesta Joyce_AC lunes, 13 de marzo de 2017 18:56
    lunes, 13 de marzo de 2017 17:52
  • No el color de la fuente si es blanco, por que el fondo del formulario es negro.

    Lo que quiero es cambiar el color azul que sale por otro para darle contraste al blanco, quizas cambiar el fondo por blanco y la fuente de color negro. (inversa de colores establecidos)

    Gracias por tu respuesta

    lunes, 13 de marzo de 2017 20:02
  • Hola amigo, tengo el mismo problema. Lograste solucionarlo?
    martes, 30 de junio de 2020 5:21
  • Estimados, prueben lo siguiente

    private class MyRenderer : ToolStripProfessionalRenderer
            {
                protected override void OnRenderMenuItemBackground(ToolStripItemRenderEventArgs e)
                {
                    if (!e.Item.Selected) base.OnRenderMenuItemBackground(e);
                    else
                    {
                        System.Drawing.Rectangle rc = new System.Drawing.Rectangle(System.Drawing.Point.Empty, e.Item.Size);
                        e.Graphics.FillRectangle(Brushes.Gray, rc);//le pongo el color gray al color de selección
                        e.Graphics.DrawRectangle(Pens.Black, 1, 0, rc.Width - 2, rc.Height - 1);
                    }
                }
            }

    para llamarlo, lo hacen desde acá

    public frmReporteVenta() //constructor de la ventana
            {
                InitializeComponent();
                cmsOpciones.Renderer = new MyRenderer();
            }

    cmsOpciones es mi MenuStrip.

    Saludos


    martes, 30 de junio de 2020 14:26