我正在尝试创建一个带有圆角的边框,并在其上半部分突出显示。我正在使用带有径向渐变的椭圆,重叠边框的上半部分,以突出显示,但我不知道如何防止椭圆为边框的角着色。这是 Kaxaml 的屏幕截图:
这是 XAML 代码:
<Page
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Background="DarkGray">
<Grid Width="256" Height="256">
<Border CornerRadius="16" Background="Black" Margin="4">
<Border Background="Gray" Margin="32">
<TextBlock Foreground="Black" Text="1" FontFamily="Trebuchet MS" FontSize="96pt"
HorizontalAlignment="Center" VerticalAlignment="Center"/>
</Border>
</Border>
<Border CornerRadius="16" ClipToBounds="True">
<Ellipse>
<Ellipse.Fill>
<RadialGradientBrush>
<GradientStop Color="White" Offset="0"/>
<GradientStop Color="Transparent" Offset="1"/>
</RadialGradientBrush>
</Ellipse.Fill>
<Ellipse.RenderTransform>
<TransformGroup>
<ScaleTransform ScaleX="3" ScaleY="2" CenterX="128" CenterY="128"/>
<TranslateTransform Y="-235"/>
</TransformGroup>
</Ellipse.RenderTransform>
</Ellipse>
</Border>
<Border CornerRadius="16" BorderThickness="8" BorderBrush="Black"/>
</Grid>
</Page>
如何阻止顶部角落区域受到椭圆阴影的影响?
我试过玩弄OpacityMask
,但我不得不承认我真的不明白如何使用它,尤其是在椭圆被转换以进行渲染的情况下。无论我尝试什么,椭圆要么完全消失,要么完全不受影响。
任何帮助将不胜感激。
提前致谢。