C# 半透明背景和不透明前景wpf
我目前拥有以下xaml代码:C# 半透明背景和不透明前景wpf,c#,wpf,uwp,C#,Wpf,Uwp,我目前拥有以下xaml代码: <Grid Name="rootGrid" Opacity=".25" Background="Black" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"> <Border Background="Black" Margin="120"> <Grid
<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>
试验
试验
目前,网格
上的不透明度
设置也应用于其子项
我只希望这种不透明度应用于其背景色,以实现变暗的效果,而不是在前景。如何做到这一点?不透明度将始终适用于儿童,因此我倾向于使用相同级别的画布来实现此效果:
<Grid>
<Canvas Opacity=".25"
Background="Black"/>
<Grid Name="rootGrid"
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>
</Grid>
试验
试验
不透明度将始终适用于儿童,因此我倾向于使用相同级别的画布来实现此效果:
<Grid>
<Canvas Opacity=".25"
Background="Black"/>
<Grid Name="rootGrid"
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>
</Grid>
试验
试验
诀窍是不要将不透明度
添加到整个网格
元素:
<Grid>
<Grid.Background>
<SolidColorBrush Color="Black" Opacity=".75"/>
</Grid.Background>
<!--(Other elements)-->
</Grid>
诀窍是不要将
不透明度
添加到整个网格
元素:
<Grid>
<Grid.Background>
<SolidColorBrush Color="Black" Opacity=".75"/>
</Grid.Background>
<!--(Other elements)-->
</Grid>
使用半透明背景,或者像SolidColorBrush一样
<Grid ...>
<Grid.Background>
<SolidColorBrush Color="Black" Opacity="0.25"/>
</Grid.Background>
...
</Grid>
...
或者通过在颜色中指定alpha值,如
<Grid Background="#3F000000" ...>
使用半透明背景,或者像SolidColorBrush一样
<Grid ...>
<Grid.Background>
<SolidColorBrush Color="Black" Opacity="0.25"/>
</Grid.Background>
...
</Grid>
...
或者通过在颜色中指定alpha值,如
<Grid Background="#3F000000" ...>
这对我很有效。我有两个网格:根网格和根内容子网格。我控制根内容的不透明度。“根目录”中的任何控件都不会生效
<Grid x:Name="Root" KeyDown="Root_KeyDown" Tapped="Root_Tapped">
<!--(Other elements)-->
<Grid x:Name="RootContent">
<!--(Other elements)-->
</Grid>
</Grid>
这对我很有效。我有两个网格:根网格和根内容子网格。我控制根内容的不透明度。“根目录”中的任何控件都不会生效
<Grid x:Name="Root" KeyDown="Root_KeyDown" Tapped="Root_Tapped">
<!--(Other elements)-->
<Grid x:Name="RootContent">
<!--(Other elements)-->
</Grid>
</Grid>
我有一个想法,Grid.Background
可能有用,但感谢alpha频道的建议!我有一个想法,Grid.Background
可能会有用,但是感谢alpha频道的建议!