protected override void OnElementPropertyChanged(object sender, PropertyChangedEventArgs e) { switch (e.PropertyName) { case nameof(Element.CornerRadius): _shadowsController?.UpdateCornerRadius(Element.CornerRadius); break; case nameof(Element.Shades): _shadowsController?.UpdateShades(Element.Shades); break; } }
private void PackChild() { if (Element.Content == null) { return; } IVisualElementRenderer renderer = Element.Content.GetOrCreateRenderer(); FrameworkElement frameworkElement = renderer.ContainerElement; _shadowsCanvas = new Canvas(); Control.Children.Add(_shadowsCanvas); Control.Children.Add(frameworkElement); _shadowsController = new UWPShadowsController(_shadowsCanvas, frameworkElement, Element.CornerRadius); _shadowsController.UpdateShades(Element.Shades); }