2015-11-06 1 views
0

Le problème est assez simple: existe-t-il un moyen de griser une option dans la barre d'état système? J'ai vu des options grisées/en gras dans d'autres programmes que j'utilise, donc de plus, comment puis-je en gras toutes les options.Comment faire pour griser une option dans la barre d'état système C#

Voici mon code actuel:

ContextMenu tray = new ContextMenu(); 
    tray.MenuItems.Add("Open", TrayClose); 

    NotifyIcon trayIcon = new NotifyIcon(); 
    trayIcon.Text = "myBeautifulProgram"; 
    trayIcon.Icon = Properties.Resources.program; 

    trayIcon.ContextMenu = tray; 
    trayIcon.Visible = false; 

Il ressemble maintenant à ceci (ignorer la frontière): enter image description here

Est-il possible que je puisse faire cela comme grisés ou gras?

+1

Réglez l'option de menu de la barre '.Enabled' sur false pour la rendre grise. Vous voudrez peut-être utiliser la version longue main (en stockant le 'MenuItem' au lieu de simplement l'ajouter aux éléments). Sinon, vous devez rechercher dans l'élément et définir ses propriétés. –

Répondre

1

Dans votre cas, vous pouvez faire quelque chose comme ça. La partie importante consiste à définir la propriété Enabled de votre élément de menu sur false. Ceci est juste du code simple qui montre comment cela fonctionne - vous pouvez le rendre plus élégant que cela je crois :)

tray.MenuItems.Add("Open", TrayClose); 
tray.MenuItems[0].Enabled = false;