private void ApplyRegistration(DataBindingRegistration <TLayerProperty, TProperty> dataBindingRegistration) { if (dataBindingRegistration == null) { throw new ArgumentNullException(nameof(dataBindingRegistration)); } dataBindingRegistration.DataBinding = this; Converter = dataBindingRegistration?.Converter; Registration = dataBindingRegistration; if (GetTargetType().IsValueType) { if (_currentValue == null) { _currentValue = default; } if (_previousValue == null) { _previousValue = default; } } Converter?.Initialize(this); }
internal DataBinding(DataBindingRegistration <TLayerProperty, TProperty> dataBindingRegistration) { LayerProperty = dataBindingRegistration.LayerProperty; Entity = new DataBindingEntity(); ApplyRegistration(dataBindingRegistration); Save(); ApplyDataBindingMode(); }
/// <inheritdoc /> public void Load() { if (_disposed) { throw new ObjectDisposedException("DataBinding"); } // General DataBindingRegistration <TLayerProperty, TProperty> registration = LayerProperty.GetDataBindingRegistration <TProperty>(Entity.TargetExpression); if (registration != null) { ApplyRegistration(registration); } EasingTime = Entity.EasingTime; EasingFunction = (Easings.Functions)Entity.EasingFunction; DataBindingMode?.Load(); }