簡體   English   中英

上下文菜單條 - >更改突出顯示的項目的顏色

[英]Context Menu Strip -> Changing the color of Highlighted Items

所以在我的上下文菜單條上,我想更改所選項目的顏色。 例如,我希望菜單項“關於我”在突出顯示時將顏色從白色更改為黑色。 這是我一直在嘗試的:

        ContextMenuStrip CMS = new ContextMenuStrip();
        CMS.ForeColor = Color.White;
        CMS.ShowImageMargin = false;
        var item = CMS.Items.Add("About Me", null);
        item.MouseHover += new EventHandler(CMS_MouseHover);

   void CMS_MouseHover(object sender, EventArgs e)
    {
        ContextMenuStrip CMS = sender as ContextMenuStrip;
        CMS.ForeColor = Color.Black;
    }

我也嘗試過使用ToolStripMenuitem事件處理程序,但我不認為它會在這里應用?

關於如何實現這一目標的任何建議?

我也想知道是否有辦法改變高光顏色,我知道這取決於你的系統,但我只是想知道。

我不相信這是最好的方法,但是一種可行的方法是在ContextMenuStrip上的各個ToolStripMenuItems上連接MouseEnter和MouseLeave事件。

例如:

    private void aboutToolStripMenuItem_MouseEnter(object sender, EventArgs e)
    {
        ToolStripMenuItem TSMI = sender as ToolStripMenuItem;
        TSMI.ForeColor = Color.Black;
    }

    private void aboutToolStripMenuItem_MouseLeave(object sender, EventArgs e)
    {
        ToolStripMenuItem TSMI = sender as ToolStripMenuItem;
        TSMI.ForeColor = Color.White;
    }

顯然,您還需要在編程創建的ToolStripMenuItem上連接事件處理程序。

你似乎試圖用“CMS.ForeColor = Color.Black”改變整個ContextMenuStrip的ForeColor,這不是你想要的。 嘗試以上,它確實有效。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM