Тень
Класс многоплатформенного пользовательского интерфейса приложений .NET (.NET MAUI) Shadow
красит тень вокруг макета или представления. Класс VisualElement имеет привязываемое Shadow
свойство типа Shadow
, которое позволяет добавлять тени в любой макет или представление.
Класс 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>
В этом примере черная тень окрашена вокруг контура изображения, с его смещением, указывающим, что он отображается в правом и нижнем углу изображения:
Тени также можно добавить в обрезанные объекты, как показано в следующем примере:
<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 изображения:
Дополнительные сведения об обрезки элемента см. в разделе "Клип" с помощью geometry.