source/SkiaSharp.Views.Uno/SkiaSharp.Views.Uno.WinUI.Shared/SKXamlCanvas.cs [49:87]: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Loaded += OnLoaded; Unloaded += OnUnloaded; SizeChanged += OnSizeChanged; var binding = new Binding { Path = new PropertyPath(nameof(Visibility)), Source = this }; SetBinding(ProxyVisibilityProperty, binding); } public SKSize CanvasSize { get; private set; } public bool IgnorePixelScaling { get => ignorePixelScaling; set { ignorePixelScaling = value; Invalidate(); } } public double Dpi { get; private set; } = 1; public event EventHandler PaintSurface; protected virtual void OnPaintSurface(SKPaintSurfaceEventArgs e) { PaintSurface?.Invoke(this, e); } private static void OnVisibilityChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { if (d is SKXamlCanvas canvas && e.NewValue is Visibility visibility) { canvas.isVisible = visibility == Visibility.Visible; canvas.Invalidate(); - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - source/SkiaSharp.Views/SkiaSharp.Views.WinUI/SKXamlCanvas.cs [58:96]: - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Loaded += OnLoaded; Unloaded += OnUnloaded; SizeChanged += OnSizeChanged; var binding = new Binding { Path = new PropertyPath(nameof(Visibility)), Source = this }; SetBinding(ProxyVisibilityProperty, binding); } public SKSize CanvasSize { get; private set; } public bool IgnorePixelScaling { get => ignorePixelScaling; set { ignorePixelScaling = value; Invalidate(); } } public double Dpi { get; private set; } = 1; public event EventHandler PaintSurface; protected virtual void OnPaintSurface(SKPaintSurfaceEventArgs e) { PaintSurface?.Invoke(this, e); } private static void OnVisibilityChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { if (d is SKXamlCanvas canvas && e.NewValue is Visibility visibility) { canvas.isVisible = visibility == Visibility.Visible; canvas.Invalidate(); - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -