Shadow

.NET Multi-platform App UI (.NET MAUI) Shadow 类可在布局或视图周围绘制阴影。 VisualElement 类包含类型为 ShadowShadow 可绑定属性,可将阴影添加到任何布局或视图中。

Shadow 类定义以下属性:

  • Radius,类型为 float,定义用于生成阴影的模糊半径。 此属性的默认值为 10。
  • Opacity,类型为 float,指示阴影的不透明度。 此属性的默认值为 1。
  • Brush,类型为 Brush,表示用于着色阴影的画笔。
  • OffSet,类型为 Point,指定阴影的偏移量,该偏移量表示产生阴影的光源位置。

这些属性由 BindableProperty 对象提供支持;也就是说,它们可以作为数据绑定的目标,并能进行样式设置。

重要

Brush 属性目前仅支持 SolidColorBrush

创建阴影

要向控件添加阴影,请将控件的 Shadow 属性设置为 Shadow 对象,该对象的属性可定义控件的外观。

以下 XAML 示例演示如何将阴影添加到 Image 中:

<Image Source="dotnet_bot.png"
       WidthRequest="250"
       HeightRequest="310">
    <Image.Shadow>
        <Shadow Brush="Black"
                Offset="20,20"
                Radius="40"
                Opacity="0.8" />
    </Image.Shadow>
</Image>

在此示例中,在图像的轮廓周围绘制黑色阴影,其偏移量指定阴影显示在图像的右侧和底部:

Screenshot of an image with a shadow applied.

还可以为剪裁对象添加阴影,如下面的示例所示:

<Image Source="https://aka.ms/campus.jpg"
       Aspect="AspectFill"
       HeightRequest="220"
       WidthRequest="220"
       HorizontalOptions="Center">
    <Image.Clip>
        <EllipseGeometry Center="220,250"
                         RadiusX="220"
                         RadiusY="220" />
    </Image.Clip>
    <Image.Shadow>
        <Shadow Brush="Black"
                Offset="10,10"
                Opacity="0.8" />
    </Image.Shadow>
</Image>

在此示例中,在剪裁图像的 EllipseGeometry 轮廓周围绘制了黑色阴影:

Screenshot of a clipped image with a shadow applied.

有关剪裁元素的详细信息,请参阅使用几何图形剪切