带透明网格的Wpf,不透明度=“0.32”将背景颜色/图像指定给按钮和文本框

时间:2015-12-31 04:23:24

标签: c# wpf

我有一个不透明度=“0.32”的网格它的工作正常,但现在我想添加一些控件,如文本框按钮,其中一些背景固体颜色但它也获得了我在这里不需要的相同的不透明度。有什么帮助吗?提前谢谢。

<Grid Margin="0,1,0,2" Grid.Row="1" Grid.Column="1" 
      Background="#06090b" Opacity="0.25">
  <Button x:Name="btnLogin" Content="Sign in" Foreground="White" 
          Margin="40,264,40,0" VerticalAlignment="Top" Height="60"
          Click="btnLogin_Click" FontSize="18" FontWeight="Medium" 
          BorderThickness="1" BorderBrush="{x:Null}" Background="Blue" 
          Panel.ZIndex="1">
  </Button>
</Grid>

1 个答案:

答案 0 :(得分:2)

我在评论中的意思是,你真的不需要ZIndex的东西。

你有几个选择:

1)使用alpha颜色,通知背景现在是8个字符长度(前2个是alpha或不透明度)

<Grid Margin="0,1,0,2" Grid.Row="1" Grid.Column="1" 
  Background="#8006090b">
      <Button x:Name="btnLogin" Content="Sign in" Foreground="White" 
          Margin="40,264,40,0" VerticalAlignment="Top" Height="60"
          Click="btnLogin_Click" FontSize="18" FontWeight="Medium" 
          BorderThickness="1" BorderBrush="{x:Null}" Background="Blue">
     </Button>
</Grid>

2)仅将不透明度设置为背景

<Grid Margin="0,1,0,2" Grid.Row="1" Grid.Column="1" >
      <Grid.Background>
          <SolidColorBrush Color="#06090b" Opacity=".25"/>
      </Grid.Background>
      <Button x:Name="btnLogin" Content="Sign in" Foreground="White" 
          Margin="40,264,40,0" VerticalAlignment="Top" Height="60"
          Click="btnLogin_Click" FontSize="18" FontWeight="Medium" 
          BorderThickness="1" BorderBrush="{x:Null}" Background="Blue">
     </Button>
</Grid>