C# 悬停时更改菜单的前景色
悬停菜单时如何更改菜单的前景色?我已使用以下代码成功地使背景色透明:C# 悬停时更改菜单的前景色,c#,winforms,C#,Winforms,悬停菜单时如何更改菜单的前景色?我已使用以下代码成功地使背景色透明: private class MyRenderer : ToolStripProfessionalRenderer { public MyRenderer() : base(new MyColors()) { } } private class MyColors : ProfessionalColorTable { public override Color Me
private class MyRenderer : ToolStripProfessionalRenderer
{
public MyRenderer() : base(new MyColors()) { }
}
private class MyColors : ProfessionalColorTable
{
public override Color MenuItemSelected
{
get { return Color.Transparent; }
}
public override Color MenuItemSelectedGradientBegin
{
get { return Color.Transparent; }
}
public override Color MenuItemSelectedGradientEnd
{
get { return Color.Transparent; }
}
public override Color MenuItemBorder
{
get { return Color.Transparent; }
}
}
现在我只想在悬停前景色时改变它。请帮助@EugenePodskal它不是重复的。那个问题改变了背景。它的forecolor@EugenePodskal不,只是我想换的前景色。但不幸的是,我无法移除旗帜。因此,需要正确的归属,一个指向原始帖子的链接和一个指向海报简介的链接。我想我找到了一种方法,我使用mouseenter和mouseleave事件来更改前景色
//Assuming black is the forecolor
private void ToolStripMenuItem1_MouseEnter(object sender, EventArgs e)
{
ToolStripMenuItem1.ForeColor = Color.Orange;
}
private void ToolStripMenuItem1_MouseLeave(object sender, EventArgs e)
{
ToolStripMenuItem1.ForeColor = Color.Black;
}