Usuario
Diseño de Menustrip (Colores)

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:
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.
Todas las respuestas
-
-
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
-
-
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
- Editado Enrique Aleman martes, 30 de junio de 2020 14:26