我正在执行以下操作来填充具有特定不透明度的矩形。
SolidColorBrush fillColor = new SolidColorBrush(myColor);
fillColor.Opacity = 0.3;
rectangle1.Fill = fillColor;
矩形是黑色背景上的用户控件的一部分。问题是我在白色背景上获得了不透明度。如何更改它,就像在黑色背景上的颜色上应用了不透明度一样。
以下是我为绿色填充所获得的颜色。 (即覆盖在白色背景上)我需要的是这样的东西。 (即叠加在黑色背景上)
答案 0 :(得分:2)
看看是否有效:
myColor.A = 75; // 255 * 0.3 is approx. 75
SolidColorBrush fillColor = new SolidColorBrush(myColor);
rectangle.Fill = fillColor;
答案 1 :(得分:2)
问题是我知道多年,但也许这会对某人有所帮助。这就是我在2017年XAML / VB视觉工作室中所做的。这很有用:
Private Sub Hyper1_PointerEntered(sender As Object, e As RoutedEventArgs) Handles Hyper1.PointerEntered
Hyper1.Background = New SolidColorBrush(Colors.Gold)
Hyper1.Background.Opacity = 0.6
End Sub