半透明背景和不透明的前景wpf

vrw*_*wim 1 c# wpf uwp

我目前有以下xaml代码:

<Grid
    Name="rootGrid"
    Opacity=".25"
    Background="Black"
    HorizontalAlignment="Stretch"
    VerticalAlignment="Stretch">
    <Border
        Background="Black"
        Margin="120">
        <Grid
            Background="White"
            Margin="8">
            <TextBlock
                Name="popupContent">
                Test
            </TextBlock>
            <Button
                Click="Button_Click">
                Test
            </Button>
        </Grid>
    </Border>
</Grid>
Run Code Online (Sandbox Code Playgroud)

目前,该Opacity设置Grid也适用于其子女.

我只希望将此不透明度应用于其背景颜色,以实现变暗效果,而不是前景.我怎样才能做到这一点?

Cle*_*ens 7

使用半透明背景,或者像SolidColorBrush一样

<Grid ...>
    <Grid.Background>
        <SolidColorBrush Color="Black" Opacity="0.25"/>
    </Grid.Background>
    ...
</Grid>
Run Code Online (Sandbox Code Playgroud)

或者通过在颜色中指定alpha值,例如

<Grid Background="#3F000000" ...>
Run Code Online (Sandbox Code Playgroud)