【C#】ContextMenuStrip 右键菜单颜色设置

本文详细介绍了如何通过修改ContexMenuStrip的RenderMode和Renderer属性来实现右键菜单背景色的调整,并展示了通过自定义ColorTable类来进一步定制鼠标悬停效果的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

有些时候自己想要修改ContexMenuStrip右键菜单的一些背景色之类的,该如何实现呢?

首先:

ContextMenuStrip _context = new ContextMenuStrip();
ToolStripMenuItem item = new ToolStripMenuItem("我是菜单");
item.Click += new EventHandler(item_Click);
item.BackColor = Color.FromArgb(32, 110, 145);
_context.Items.Add(item);

以上代码实现了右键菜单的背景色修改,那么现在会发现鼠标移上去后颜色不好看,怎么修改,没有属性直接改啊....

那么增加以下代码试试:

_context.RenderMode = ToolStripRenderMode.Professional;
_context.Renderer = new ToolStripProfessionalRenderer(new MqxsColorTable());

private class MqxsColorTable : ProfessionalColorTable
{
     public override System.Drawing.Color MenuItemSelected
     {
           get { return Color.Tomato; }
      }
}

这是时候就可以看到已经实现鼠标移上去的背景色了。其他颜色在类MqxsColorTable 上进行增加即可。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值