使表格半透明以查看表格的背景图像

时间:2015-11-16 10:42:07

标签: wpf forms

我正在使用WPF(c#)表单和背景图片(背景图片刷)。

我想让所有的UI元素(按钮,标题,文本框)变得半透明,这样它们就不会完全覆盖图像,

但背景图片仍然可见(非半透明)

我希望我们可以这样做,而无需设置UI元素的所有不透明值。

2 个答案:

答案 0 :(得分:1)

也许这可以帮助

 <Window.Resources>
        <Style x:Key="transparentControls" TargetType="Button">
            <Setter Property="Opacity" Value="0.1"/>
            <Setter Property="Background" Value="Green"/>
        </Style>
    </Window.Resources>
    <Grid>
        <Grid.Background>
            <ImageBrush ImageSource="MyImage.jpg"/>
        </Grid.Background>
        <Button Height="24" Width="100" Style="{StaticResource transparentControls}"  VerticalAlignment="Top" Content="Hey"/>
        <Button Height="24" Width="100" Style="{StaticResource transparentControls}"  Content="There"/>
        <Button Height="24" Width="100" Style="{StaticResource transparentControls}"  VerticalAlignment="Bottom" Content="Click Me"/>
    </Grid>

答案 1 :(得分:0)

尝试将所有UI元素放在Canvas或Grid中,并设置该父元素的不透明度。

就像那样:

<Canvas Opacity="1">
        <Button Width="100" Height="100"></Button>
</Canvas>

我希望这就是你的意思。