Wpf 半透明自定义布局面板

Wpf 半透明自定义布局面板,wpf,layout,transparency,panel,Wpf,Layout,Transparency,Panel,通过将面板的不透明度值设置为0.5,我在WPF中构建了一个半透明的自定义布局面板。一切正常,除了面板的子级也是半透明的之外 要使面板的子级在没有透明度的情况下渲染,我需要更改什么 以下是相关代码: public class DialogLayoutPanelControl : Panel { public DialogLayoutPanelControl() : base() { Background = Brushes.LightGray; Op

通过将面板的不透明度值设置为0.5,我在WPF中构建了一个半透明的自定义布局面板。一切正常,除了面板的子级也是半透明的之外

要使面板的子级在没有透明度的情况下渲染,我需要更改什么

以下是相关代码:

public class DialogLayoutPanelControl : Panel
{
    public DialogLayoutPanelControl() : base()
    {
        Background = Brushes.LightGray;
        Opacity = 0.5;
    }
 }
解决方案(由Anvaka提供):


更改画笔的不透明度,而不是控制画笔本身…

非常感谢Anvaka,你也帮了我。在我的例子中,我是从XAML(从样式)完成的:


Background=newsolidColorBrush(Colors.LightGray){Opacity=0.5};这确实奏效了——谢谢!
    Background = new SolidColorBrush(Colors.LightGray) { Opacity = 0.5 };
   <Setter Property="Background">
        <Setter.Value>
            <SolidColorBrush Color="Black" Opacity="0.3"/>
        </Setter.Value>
    </Setter>