0

我有以下 xaml:

<Border x:Name="baseBorder" Grid.Row="0" Grid.RowSpan="200" Canvas.ZIndex="1" Opacity="0.5" Background="Gray">
    <Border x:Name="interiorBorder" Background="White" Height="200" Width="450" Opacity="1">
        <TextBlock x:Name="txtMessage" HorizontalAlignment="Center" Width="400" TextAlignment="Center" TextWrapping="Wrap" VerticalAlignment="Center" FontSize="20" FontWeight="Bold" Foreground="Black" >
    </Border>
</Border>

我希望内部边框的不透明度为 1,同时保持基本边框的不透明度为 0.5。

上面的 xaml 不起作用,我在两个对象中都得到 0.5 的不透明度。

4

1 回答 1

1

尝试让interiorBorder 成为baseBorder 的兄弟而不是孩子,也许是这样的。

<Border x:Name="baseBorder" Grid.Row="0" Grid.RowSpan="200" Canvas.ZIndex="1" Opacity="0.5" />
<Border x:Name="interiorBorder" Grid.Row="0" Grid.RowSpan="200" Canvas.ZIndex="1" Opacity="1">
    <TextBlock x:Name="txtMessage" />
</Border>

我想您还想在interiorBorder 上设置Margin,这样您仍然可以看到baseBorder。

于 2012-11-28T22:37:51.180 回答