示例#1
0
 public void InvalidateGeometry(InvalidateGeometryReasons reasons)
 {
     if (GeometrySource.InvalidateGeometry(reasons))
     {
         InvalidateArrange();
     }
 }
示例#2
0
 public bool InvalidateGeometry(InvalidateGeometryReasons reasons)
 {
     if (_effectInvalidated)
     {
         return(false);
     }
     _effectInvalidated = true;
     if (reasons != InvalidateGeometryReasons.ParentInvalidated)
     {
         InvalidateParent(Parent);
     }
     return(true);
 }
示例#3
0
 static DrawingPropertyMetadata()
 {
     DrawingPropertyChanged += delegate(object sender, DrawingPropertyChangedEventArgs args) {
         if ((sender is IShape shape) && args.Metadata.AffectsRender)
         {
             InvalidateGeometryReasons reasons = InvalidateGeometryReasons.PropertyChanged;
             if (args.IsAnimated)
             {
                 reasons |= InvalidateGeometryReasons.IsAnimated;
             }
             shape.InvalidateGeometry(reasons);
         }
     };
 }
        public bool InvalidateGeometry(InvalidateGeometryReasons reasons)
        {
            if ((reasons & InvalidateGeometryReasons.TemplateChanged) != 0)
            {
                CachedGeometry = null;
            }
            if (!_geometryInvalidated)
            {
                _geometryInvalidated = true;
                return(true);
            }

            return(false);
        }