Поделиться через


LayerVisual.Shadow Свойство

Определение

Возвращает или задает тень, применяемую к плоскому представлению дочерних элементов объекта LayerVisual.

public:
 property CompositionShadow ^ Shadow { CompositionShadow ^ get(); void set(CompositionShadow ^ value); };
CompositionShadow Shadow();

void Shadow(CompositionShadow value);
public CompositionShadow Shadow { get; set; }
var compositionShadow = layerVisual.shadow;
layerVisual.shadow = compositionShadow;
Public Property Shadow As CompositionShadow

Значение свойства

Тень, применяемая к плоскому представлению дочерних элементов объекта LayerVisual.

Требования к Windows

Семейство устройств
Windows 10 Fall Creators Update (появилось в 10.0.16299.0)
API contract
Windows.Foundation.UniversalApiContract (появилось в v5.0)

Примеры

В этом примере показано, как применить DropShadow к Объекту LayerVisual.

private async void InitComposition()
{
  Compositor compositor = ElementCompositionPreview.GetElementVisual(MyGrid).Compositor;

  //Create LayerVisual
  LayerVisual layerVisual = compositor.CreateLayerVisual();
  layerVisual.Size = new Vector2(900, 900);

  //Create SpriteVisuals to use as LayerVisual child
  SpriteVisual sv1 = compositor.CreateSpriteVisual();
  sv1.Brush = compositor.CreateColorBrush(Windows.UI.Colors.Blue);
  sv1.Size = new Vector2(300, 300);
  sv1.Offset = new Vector3(200, 200, 0);

  SpriteVisual sv2 = compositor.CreateSpriteVisual();
  sv2.Brush = compositor.CreateColorBrush(Colors.Red);
  sv2.Size = new Vector2(300, 300);
  sv2.Offset = new Vector3(400, 400, 0);

  //Add children to the LayerVisual
  layerVisual.Children.InsertAtTop(sv1);
  layerVisual.Children.InsertAtTop(sv2);

  //Create DropShadow
  DropShadow shadow = compositor.CreateDropShadow();
  shadow.Color = Colors.DarkSlateGray;
  shadow.Offset = new Vector3(40, 40, 0);
  shadow.BlurRadius = 9;
  shadow.SourcePolicy = CompositionDropShadowSourcePolicy.InheritFromVisualContent;

  //Associate Shadow with LayerVisual
  layerVisual.Shadow = shadow;

  ElementCompositionPreview.SetElementChildVisual(MyGrid, layerVisual);
}         

Результат выглядит так:

Красный квадрат, перекрывающий синий квадрат с тенью, примененной к каждому квадрату.

Применяется к