Полупрозрачная панель макета - PullRequest
2 голосов
/ 09 июня 2010

Я создал полупрозрачную пользовательскую панель макета в WPF , установив для параметра Непрозрачность панели значение 0,5.Все работает как положено, за исключением того, что дочерние элементы панели также полупрозрачны !

Что мне нужно изменить, чтобы дочерние элементы панели отображались без прозрачности?

Вот соответствующий код:

public class DialogLayoutPanelControl : Panel
{
    public DialogLayoutPanelControl() : base()
    {
        Background = Brushes.LightGray;
        Opacity = 0.5;
    }
 }

Решение (Анвака):

    Background = new SolidColorBrush(Colors.LightGray) { Opacity = 0.5 };

Ответы [ 2 ]

6 голосов
/ 09 июня 2010

Измените непрозрачность кисти, а не контролируйте себя ...

1 голос
/ 11 августа 2011

Большое спасибо, Анвака, ты мне тоже помог. В моем случае я сделал это из XAML (из стиля):

   <Setter Property="Background">
        <Setter.Value>
            <SolidColorBrush Color="Black" Opacity="0.3"/>
        </Setter.Value>
    </Setter>
...