private void Cascade(SolidFillStyle style) { var missing = (style.Fields | style.InheritedFields) & ~Fields; if (missing == SolidFillStyleFields.None) return; foreach (SolidFillStyleFields fields in Enum.GetValues(typeof(SolidFillStyleFields))) if (missing.HasFlag(fields)) switch (fields) { case SolidFillStyleFields.Color: _color = style.Color; OnNotifyPropertyChanged(ColorPropertyName); break; case SolidFillStyleFields.Opacity: _opacity = style.Opacity; OnNotifyPropertyChanged(OpacityPropertyName); break; } InheritedFields = missing; }
public SolidFill() { Style = new SolidFillStyle(); Style.PropertyChanged += new PropertyChangedEventHandler(Style_PropertyChanged); }