91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

c# Menu和ContextMenu自定義風格簡單實現

發布時間:2020-06-29 18:42:33 來源:網絡 閱讀:961 作者:tancfeng 欄目:編程語言

為了實現自定義的Menu和ContextMenu效果,可以通過派生ProfessionalColorTable類,在自定義類中通過重寫ProfessionalColorTable類的相關屬性,產生自定義菜單效果。

using System.Drawing;
using System.Windows.Forms;

public class CustomToolStripColorTable : ProfessionalColorTable
{
    /// <summary>
    /// 主菜單項被點擊后,展開的下拉菜單面板的邊框
    /// </summary>
    public override Color MenuBorder
    {
        get
        {
            return Color.FromArgb(37, 37, 37);
        }
    }
    /// <summary>
    /// 鼠標移動到菜單項(主菜單及下拉菜單)時,下拉菜單項的邊框
    /// </summary>
    public override Color MenuItemBorder
    {
        get
        {
            return Color.Transparent;
        }
    }
    #region 頂級菜單被選中背景顏色
    public override Color MenuItemSelectedGradientBegin
    {
        get
        {
            return Color.FromArgb(37, 37, 37);
        }
    }
    public override Color MenuItemSelectedGradientEnd
    {
        get
        {
            return Color.FromArgb(37, 37, 37);
        }
    }
    #endregion
    #region 頂級菜單被按下是,菜單項背景色
    public override Color MenuItemPressedGradientBegin
    {
        get
        {
            return Color.Black;
        }
    }
    public override Color MenuItemPressedGradientMiddle
    {
        get
        {
            return Color.FromArgb(37, 37, 37);
        }
    }
    public override Color MenuItemPressedGradientEnd
    {
        get
        {
            return Color.Black;
        }
    }
    #endregion
    /// <summary>
    /// 菜單項被選中時的顏色
    /// </summary>
    public override Color MenuItemSelected
    {
        get
        {
            return Color.FromArgb(37, 37, 37);
        }
    }
    #region 下拉菜單面板背景設置(不包括下拉菜單項)
    //下拉菜單面板背景一共分為2個部分,左邊為圖像區域,右側為文本區域,需要分別設置
    //ToolStripDropDownBackground設置文本部分的背景色
    public override Color ToolStripDropDownBackground
    {
        get
        {
            return Color.Black;
        }
    }
    //以ImageMarginGradient開頭的3個設置的是圖像部分的背景色,begin->end是從左到右的順序
    public override Color ImageMarginGradientBegin
    {
        get
        {
            return Color.Black;
        }
    }
    public override Color ImageMarginGradientMiddle
    {
        get
        {
            return Color.Black;
        }
    }
    public override Color ImageMarginGradientEnd
    {
        get
        {
            return Color.Black;
        }
    }
    #endregion
}

然后對需要實現自定義風格的菜單(如:contextMenuStrip1)應用如下代碼:

 contextMenuStrip1.RenderMode = ToolStripRenderMode.Professional;
            contextMenuStrip1.Renderer = new ToolStripProfessionalRenderer(new CustomToolStripColorTable());

1.菜單項點擊之后,整個菜單項及下拉菜單項邊框的顏色

       publicoverrideColor MenuBorder

        {

            get

            {

                returnColor.Red;

            }

        }

                             c# Menu和ContextMenu自定義風格簡單實現

2.鼠標移動到菜單項上,菜單項邊框的顏色(包括下拉菜單項)

        publicoverrideColor MenuItemBorder

        {

            get

            {

                returnColor.Red;

            }

        }

  

c# Menu和ContextMenu自定義風格簡單實現

c# Menu和ContextMenu自定義風格簡單實現


3、菜單項被按下時,菜單項背景漸變開始的顏色

        publicoverrideColor MenuItemPressedGradientBegin

        {

            get

            {

                returnColor.Red;

            }

        }

c# Menu和ContextMenu自定義風格簡單實現

4.菜單項被按下時,菜單項背景漸變結束的顏色

        publicoverrideColor MenuItemPressedGradientEnd

        {

            get

            {

                returnColor.Red;

            }

        }

c# Menu和ContextMenu自定義風格簡單實現

5、下拉菜單被選中的顏色

        publicoverrideColor MenuItemSelected

        {

            get

            {

                returnColor.Red;

            }

        }

c# Menu和ContextMenu自定義風格簡單實現

6、主菜單項被選中(而非按下),漸變開始的顏色

        publicoverrideColor MenuItemSelectedGradientBegin

        {

            get

            {

                returnColor.Red;

            }

        }

c# Menu和ContextMenu自定義風格簡單實現

7、主菜單欄漸變開始的顏色

        publicoverrideColor MenuStripGradientBegin

        {

            get

            {

                returnColor.Red;

            }

        }

c# Menu和ContextMenu自定義風格簡單實現

c# Menu和ContextMenu自定義風格簡單實現

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

柘城县| 尼玛县| 怀宁县| 宁河县| 安塞县| 杭锦后旗| 海淀区| 巴马| 许昌市| 永寿县| 长汀县| 富平县| 都安| 新营市| 阳山县| 邛崃市| 左权县| 高邮市| 荆州市| 达州市| 浠水县| 招远市| 桐庐县| 榆树市| 黄浦区| 灵宝市| 绍兴县| 陵川县| 额敏县| 威远县| 江陵县| 花莲县| 铅山县| 沿河| 定南县| 定襄县| 易门县| 肇东市| 永州市| 吉木乃县| 福建省|