2011-10-12 31 views
5

Tôi đang làm như sau để điền vào một hình chữ nhật với độ mờ nhất định.SolidColorBrush với Opacity trên nền đen

SolidColorBrush fillColor = new SolidColorBrush(myColor); 
fillColor.Opacity = 0.3; 
rectangle1.Fill = fillColor; 

Hình chữ nhật là một phần của điều khiển người dùng trên nền đen. Vấn đề là tôi nhận được độ mờ trên nền trắng. Làm thế nào để thay đổi nó như thể opacity được áp dụng trên màu sắc trên một nền đen.

Sau đây là màu tôi nhận được để tô màu xanh lục. enter image description here (ví dụ như lớp phủ trên nền trắng) Những gì tôi cần là một cái gì đó như thế này. enter image description here (nghĩa như được che phủ trên nền đen)

Trả lời

2

Câu hỏi là tuổi tôi biết nhưng có lẽ điều này sẽ giúp một ai đó. Đây là những gì tôi đã làm trong XAML/VB visual studio 2017. Điều này hoạt động tuyệt vời:

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 
2

Xem nếu công trình này:

myColor.A = 75; // 255 * 0.3 is approx. 75 
SolidColorBrush fillColor = new SolidColorBrush(myColor); 
rectangle.Fill = fillColor; 
+0

Không hoạt động. – devnull

Các vấn đề liên quan