我通过将面板的不透明度值设置为0.5,在WPF中构建了一个半透明自定义布局面板。一切都按预期工作,除了面板的孩子也是半透明的!
在没有透明度的情况下,我需要更改什么才能让面板的子项呈现?
以下是相关代码:
public class DialogLayoutPanelControl : Panel
{
public DialogLayoutPanelControl() : base()
{
Background = Brushes.LightGray;
Opacity = 0.5;
}
}
解决方案(Anvaka):
Background = new SolidColorBrush(Colors.LightGray) { Opacity = 0.5 };
答案 0 :(得分:6)
更改画笔的不透明度,而不是控制自身......
答案 1 :(得分:1)
非常感谢Anvaka,你也帮了我。就我而言,我是从XAML(来自风格)做到的:
<Setter Property="Background">
<Setter.Value>
<SolidColorBrush Color="Black" Opacity="0.3"/>
</Setter.Value>
</Setter>