如何使系统托盘中的选项变灰 C#

How to grey out an option in system tray C#

问题很简单:有没有办法让系统托盘中的选项变灰?我在我使用的其他程序中看到 greyed/bold 输出选项,所以另外我如何加粗任何选项。

这是我当前的代码:

    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;

现在看起来像这样(忽略边框):

有什么方法可以使它变灰或变粗吗?

你来电

tray.MenuItems.Add("Open", TrayClose);

returns一个MenuItem. It has useful members such as Enabled or DefaultItem.

对于你的情况,你可以这样做。重要的部分是将菜单项的 Enabled 属性 设置为 false。这只是简单的代码,展示了它是如何工作的——我相信你可以让它比这更优雅:)

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