我目前使用此代码更改所有按钮上的Fore或背面颜色:
Private Sub SetAllLabelsForeColor(ByVal parent As Control)
For Each c As Control In parent.Controls
If TypeOf (c) Is Button And c.BackColor = Color.Red Then
c.FlatAppearance.MouseOverBackColor = Color.White 'I AM STUCK HERE
Else
If c.HasChildren Then
SetAllLabelsForeColor(c)
End If
End If
Next
End Sub
如果我想知道是否有机会改变" On Hover"所有这些按钮上的颜色。我通常可以通过以下方式更改悬停颜色:
Button1.FlatAppearance.MouseOverBackColor = Color.White
但似乎对手并不认识FlatAppearance。我已经尝试过以下代码,但它不起作用:
c.FlatAppearance.MouseOverBackColor = Color.White
我是否有替代方式或类似方式更改所有按钮上的悬停颜色?
答案 0 :(得分:1)
您需要将控件转换为按钮:
Dim b = DirectCast(c, Button)
b.FlatAppearance.MouseOverBackColor = Color.White 'I AM STUCK HERE
这使您可以访问所需内容。