我正在开发一个具有透明背景的几个按钮的应用程序。其中一个是自定义退出按钮,而不是使用标准的Windows边框。此退出按钮有两种颜色,另一种使用MouseEnter事件显示。退出按钮是一个透明背景的十字架。
透明背景可以正常工作,直到您将鼠标悬停在按钮上。然后backcolor似乎改变为Control并且透明度丢失。将光标移离按钮后,它会恢复正常。这里奇怪的是,具有完全相同代码的完全相同的按钮可用于除此之外的其他几个窗口,这是主要窗体。
我尝试删除所有Mouseevents并单击事件,并且只有一个透明背景的按钮。现在,即使没有任何MouseEnter事件并且没有更改按钮背景图像,一旦您将鼠标悬停在按钮上,透明度就会丢失。所以基本上这是一个没有任何功能的静态按钮,一旦你通过改变BackColor来悬停它,它仍然会起作用,为什么?
我有一个模糊的记忆经历过这个问题,但我似乎无法弄清楚我做了什么来解决它。
提前致谢, 弗雷德里克
答案 0 :(得分:6)
我现在发现了这个问题。如果其他人遇到此问题,请确保在FlatAppearance部分中将MouseDownBackColor和MouseOverBackColor设置为Transparent。这就行了。