2013-04-01 101 views
1

我正在開發一個應用程序,它有幾個透明背景的按鈕。其中之一是自定義退出按鈕,而不是使用標準的Windows邊框。此退出按鈕有兩種顏色,另一種是使用MouseEnter事件顯示的。退出按鈕是具有透明背景的十字。C# - 懸停按鈕刪除透明背景

透明背景工作正常,直到你將鼠標懸停在按鈕上。然後背景顏色以某種方式似乎改變爲控制並且透明度丟失。將光標移離按鈕後,它將恢復正常。這裏奇怪的是,完全相同的代碼完全相同的按鈕可以在其他幾個窗口上工作,除了這個主窗體之外。

我試着刪除所有Mouseevents並單擊事件,只有一個帶透明背景的按鈕。現在,即使沒有任何MouseEnter事件並且沒有任何按鈕背景圖像的更改,一旦您將鼠標懸停在按鈕上,透明度就會丟失。所以基本上這是一個沒有任何功能的靜態按鈕,一旦你通過改變BackColor將其懸停,爲什麼還會有反應?

我有一個模糊的記憶,以前遇到過這個問題,但我似乎無法弄清楚我做了什麼來解決它。

由於提前, 弗雷德裏克

+0

這是Windows窗體還是wpf? – FlyingStreudel

回答

4

我現在已經找到了問題。如果有其他人遇到此問題,請確保在FlatAppearance部分中將MouseDownBackColor和MouseOverBackColor設置爲透明。那就是訣竅。