2011-10-24 9 views
18

En mi aplicación, estoy usando un elemento del menú emergente cuando hago clic derecho en un objeto. Me dinámicamente a edificar este menú utilizando código como el siguiente:¿Cómo configuro la opción de menú predeterminada en ContextMenuStrip?

ContextMenuStrip menu = new ContextMenuStrip(); 
menu.Items.Add(new ToolStripMenuItem("Item1", aNiceImage, someFunction)); 
menu.Items.Add(new ToolStripMenuItem("Item2", alsoNiceImage, someOtherFunction)); 

Ahora quiero fijar uno de estos elementos de menú en negrita (como se recomienda en las Directrices de la experiencia del usuario de Windows) para indicar qué acción corresponde con un doble clic el objeto.

¿Cómo puedo hacer esto?

Respuesta

16

usa item.Font = new Font(item.Font, item.Font.Style | FontStyle.Bold) para hacer un efecto de negrita a la fuente actual.

que también puede seleccionar automáticamente el elemento predeterminado de la siguiente manera:

private void contextMenuStrip1_Opening(object sender, CancelEventArgs e) 
{ 
    contextMenuStrip1.Items[3].Select(); 
} 
+0

Tan simple como eso ... Gracias. –

+0

Esto funciona para mí en el proyecto de WPF 'ToolStripMenuItem1.Font = new Font (ToolStripMenuItem1.Font, System.Drawing.FontStyle.Bold);' – vinsa

3

utilizar la propiedad Font para especificar un tipo de letra con el FontStyle deseada:

myToolStripMenuItem.Font = new Font(
    FontFamily.GenericSansSerif, 
    12.0F, FontStyle.Bold); 

alterar Obviamente las entradas para la salida deseada, FontStyle.Bold que es la parte importante aquí.

Cuestiones relacionadas