题
如何设置组盒等背景的不透明度。
下面的代码没有编译:
<Style TargetType="GroupBox">
<Setter Property="Background">
<Setter.Value>
<SolidColorBrush Opacity="0.5">White</SolidColorBrush>
</Setter.Value>
</Setter>
</Style>
解决方案
您的代码不是因为不透明度而编译,而是因为“白色”的价值。您必须将其应用于刷子 Color
.
您可以使用:
<SolidColorBrush Opacity="0.5" Color="White" />
或者
<SolidColorBrush Opacity="0.5">
<SolidColorBrush.Color>White</SolidColorBrush.Color>
</SolidColorBrush>
其他提示
您可以将不透明度设置为直接在颜色上想要的任何东西。前两个十六进制数控制刷子的“ alpha”。 7F为50%
<SolidColorBrush x:Key="MyBrush" Color="#7FFFFFFF"/>
因此,您的风格看起来像这样:
<Style TargetType="GroupBox">
<Setter Property="Background">
<Setter.Value>
<SolidColorBrush Color="#7FFFFFFF"/>
</Setter.Value>
</Setter>
</Style>
不透明度是GroupBox本身的属性,而不是其背景。
尝试
<Style TargetType="GroupBox">
<Setter Property="Background" Value="White"/>
<Setter Property="Opacity" Value="0.5"/>
</Style>
或者,您可以在 @jay的答案中在使用它的地方设置组箱。
如果您真的只想更改背景不透明度,请使用以下内容:
<Style TargetType="GroupBox">
<Setter Property="Background" Value="#80ffffff"/>
</Style>
不隶属于 StackOverflow