private void OnParentPropertyChanged(object sender, PropertyChangedEventArgs e)
 {
     if (_inheritProperties.Contains(e.Property))
     {
         CurrentValueChanged?.Invoke(this, e.Property.Helper.CreateCurrentValueChangedEventArgs(e));
     }
 }
 public void TryAddInheritProperty <T>(DependencyProperty <T> property)
 {
     if (_inheritProperties.Add(property) && _parent != null)
     {
         var value = _parent.GetValue(property);
         CurrentValueChanged?.Invoke(this, new CurrentValueChangedEventArgs(property, false, null, true, value));
     }
 }
 private void TryAddInheritProperty(DependencyProperty property)
 {
     if (_parent != null && _inheritProperties.Add(property))
     {
         IEffectiveValue e;
         if (_parent.ValueStorage.TryGetCurrentEffectiveValue(property, out e))
         {
             CurrentValueChanged?.Invoke(this, new CurrentValueChangedEventArgs(property, false, null, true, property.Helper.GetEffectiveValue(e)));
         }
     }
 }
示例#4
0
 private void SetCurrentValue(int value, bool byuser)
 {
     if (!(value == _CurrentValue))
     {
         bool cancel = false;
         OnValueChanging(_CurrentValue, value, ref cancel);
         if (!cancel)
         {
             int O = _CurrentValue;
             _CurrentValue = value;
             _ForcedText   = null;
             UpdateStatus();
             CurrentValueChanged?.Invoke(this, O, value, byuser);
         }
     }
 }
示例#5
0
        private void SetCurrentValue(float value, bool byuser)
        {
            value = (float)Math.Round(value, DecimalPositions);
            if (value != _CurrentValue)
            {
                bool cancel = false;
                this.OnValueChanging(_CurrentValue, value, ref cancel);
                if (!cancel)
                {
                    float oldvalue = _CurrentValue;
                    _CurrentValue = value;
                    CurrentValueChanged?.Invoke(this, oldvalue, value, byuser);
                }
            }

            this.UpdateStatus();
        }
 /// <summary>
 ///     Called when the value of <see cref="CurrentValue" /> has changed.
 /// </summary>
 protected virtual void OnCurrentValueChanged()
 {
     CurrentValueChanged?.Invoke(this, EventArgs.Empty);
     OnPropertyChanged(new PropertyChangedEventArgs(nameof(CurrentValue)));
 }
示例#7
0
 private void OnCurrentValueChanged(DependencyProperty key, bool hasOldValue, object oldValue, bool hasNewValue, object newValue)
 {
     CurrentValueChanged.InvokeSerial(this, new CurrentValueChangedEventArgs(key, hasOldValue, oldValue, hasNewValue, newValue));
 }
示例#8
0
 protected void OnCurrentValueChanged(Value currentValue)
 {
     CurrentValueChanged?.Invoke(this, currentValue);
 }
示例#9
0
 /// <summary>
 /// Method to invoke the <see cref="CurrentValueChanged"/> event from derived classes.
 /// </summary>
 /// <param name="sender">The sender.</param>
 /// <param name="e">The <see cref="EventArgs"/> instance containing the event data.</param>
 protected void OnCurrentValueChanged(object sender, TEventArgs e)
 {
     CurrentValueChanged.SafeInvoke(sender, e);
 }
示例#10
0
 protected virtual void OnCurrentValueChanged(EventArgs e)
 {
     CurrentValueChanged?.Invoke(this, e);
 }
示例#11
0
 protected void OnCurrentValueChanged(float value) =>
 CurrentValueChanged?.Invoke(this, value);