private void OnSizeChanged()

in SamplesCommon/SamplesCommon/SwipeDismissPanel.cs [156:184]


        private void OnSizeChanged(object sender, Microsoft.UI.Xaml.SizeChangedEventArgs e)
        {
            Vector2 size = new System.Numerics.Vector2((float)this.ActualWidth, (float)this.ActualHeight);

            if (m_interactionTracker != null)
            {
                m_interactionTracker.MinPosition = new Vector3(-size.X, 0, 0);
                m_interactionTracker.MaxPosition = new Vector3(size.X, 0, 0);

                if (Content != null)
                {
                    var positionExpression = m_compositor.CreateExpressionAnimation("-tracker.Position");
                    positionExpression.SetReferenceParameter("tracker", m_interactionTracker);

                    m_contentVisual = ElementCompositionPreview.GetElementVisual(Content);
                    m_contentVisual.StartAnimation("Offset", positionExpression);
                    m_contentVisual.Size = size;

                    if (m_setUpExpressions && m_progressAnimation == null)
                    {
                        m_progressAnimation = m_compositor.CreateExpressionAnimation(
                            "clamp(visual.Offset.X / visual.Size.X, -1, 1)");
                        m_progressAnimation.SetReferenceParameter("visual", m_contentVisual);

                        m_rootVisual.Properties.StartAnimation("NormalizedProgress", m_progressAnimation);
                    }
                }
            }
        }