C# - 悬停按钮删除透明背景
Posted
技术标签:
【中文标题】C# - 悬停按钮删除透明背景【英文标题】:C# - Hovering a button removes transparent background 【发布时间】:2013-03-22 21:09:58 【问题描述】:我正在开发一个应用程序,它有几个透明背景的按钮。其中之一是自定义退出按钮,而不是使用标准的窗口边框。此退出按钮有两种颜色,另一种使用 MouseEnter 事件显示。退出按钮是一个带有透明背景的十字形。
透明背景可以正常工作,直到您悬停按钮。然后背景颜色似乎以某种方式变为控制并且透明度丢失。一旦将光标从按钮上移开,它就会恢复正常。这里奇怪的是,具有完全相同代码的完全相同的按钮可以在其他几个窗口上工作,除了这个是主窗体。
我尝试删除所有鼠标事件和单击事件,并且只有一个具有透明背景的按钮。现在,即使没有任何 MouseEnter 事件,也没有更改按钮背景图像,一旦悬停按钮,透明度就会丢失。所以基本上这是一个没有任何功能的静态按钮,一旦你通过改变背景颜色悬停它,它仍然会做出反应,为什么?
我对以前遇到过这个问题有一个模糊的记忆,但我似乎无法弄清楚我做了什么来解决它。
提前致谢, 弗雷德里克
【问题讨论】:
这是 windows 窗体还是 wpf? 【参考方案1】:我现在找到了问题所在。如果其他人遇到此问题,请确保在 FlatAppearance 部分中将 MouseDownBackColor 和 MouseOverBackColor 设置为透明。成功了。
【讨论】:
以上是关于C# - 悬停按钮删除透明背景的主要内容,如果未能解决你的问题,请参考以下文章
如何在不影响内容不透明度(悬停时)的情况下为背景不透明度设置动画?