如何设置组盒等背景的不透明度。

下面的代码没有编译:

<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>
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top