如何在不影响WPF中的子元素的情况下使背景透明

use*_*er1 0 c# wpf transparent

如果我有:

<Grid Background="LightGray" Margin="2,4,2,4" Opacity="0.5">
<Image Source="{Binding FullName}" Width="300" Height="170" />
</Grid>
Run Code Online (Sandbox Code Playgroud)

这也将使图像的不透明度为0.5.当图像保持不透明度为1时,是否可以使背景透明

Gus*_*dor 6

您需要使用Brush不是1的Alpha通道(不透明度)组件指定自己的对象.

<Grid>
    <Grid.Background>
       <SolidColorBrush Color="#FF295564" Opacity="0.3"/>
    </Grid.Background>
</Grid>
Run Code Online (Sandbox Code Playgroud)

值得注意的是,颜色十六进制值的第一个字节是alpha透明度,但Opacity属性允许您使用double,而不是无符号字节.它更容易阅读.