Exemple #1
0
        private static void Figures_Changed(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            //todo: find a way to know when the points changed in the collection
            PathGeometry         geometry      = (PathGeometry)d;
            PathFigureCollection oldCollection = (PathFigureCollection)e.OldValue;
            PathFigureCollection newCollection = (PathFigureCollection)e.NewValue;

            if (oldCollection != newCollection)
            {
                if (oldCollection != null)
                {
                    oldCollection.SetParentPath(null);
                }
                if (geometry.INTERNAL_parentPath != null && geometry.INTERNAL_parentPath._isLoaded)
                {
                    if (newCollection != null)
                    {
                        newCollection.SetParentPath(geometry.INTERNAL_parentPath);
                    }

                    geometry.INTERNAL_parentPath.ScheduleRedraw();
                }
            }
        }