diff --git a/src/Avalonia.Base/PropertyStore/EffectiveValue.cs b/src/Avalonia.Base/PropertyStore/EffectiveValue.cs
index 647a16179f..04d3c805c2 100644
--- a/src/Avalonia.Base/PropertyStore/EffectiveValue.cs
+++ b/src/Avalonia.Base/PropertyStore/EffectiveValue.cs
@@ -19,12 +19,6 @@ namespace Avalonia.PropertyStore
///
public object? Value => GetBoxedValue();
- ///
- /// Gets the current effective base value as a boxed value, or
- /// if not set.
- ///
- public object? BaseValue => GetBoxedBaseValue();
-
///
/// Gets the priority of the current effective value.
///
@@ -86,22 +80,6 @@ namespace Avalonia.PropertyStore
IValueEntry value,
BindingPriority priority);
- ///
- /// Sets the value and base value for a non-LocalValue priority, raising
- /// where necessary.
- ///
- /// The associated value store.
- /// The new value of the property.
- /// The priority of the new value.
- /// The new base value of the property.
- /// The priority of the new base value.
- public abstract void SetAndRaise(
- ValueStore owner,
- IValueEntry value,
- BindingPriority priority,
- IValueEntry baseValue,
- BindingPriority basePriority);
-
///
/// Raises in response to an inherited value
/// change.
@@ -140,7 +118,6 @@ namespace Avalonia.PropertyStore
public abstract void DisposeAndRaiseUnset(ValueStore owner, AvaloniaProperty property);
protected abstract object? GetBoxedValue();
- protected abstract object? GetBoxedBaseValue();
protected void UpdateValueEntry(IValueEntry? entry, BindingPriority priority)
{
diff --git a/src/Avalonia.Base/PropertyStore/EffectiveValue`1.cs b/src/Avalonia.Base/PropertyStore/EffectiveValue`1.cs
index bc2776a5df..343cd9465d 100644
--- a/src/Avalonia.Base/PropertyStore/EffectiveValue`1.cs
+++ b/src/Avalonia.Base/PropertyStore/EffectiveValue`1.cs
@@ -26,6 +26,7 @@ namespace Avalonia.PropertyStore
{
Value = value;
Priority = priority;
+ BasePriority = BindingPriority.Unset;
if (property.HasCoercion &&
property.GetMetadata(owner.GetType()) is { } metadata &&
@@ -40,17 +41,6 @@ namespace Avalonia.PropertyStore
value = coerce(owner, value);
}
-
- if (priority >= BindingPriority.LocalValue && priority < BindingPriority.Inherited)
- {
- _baseValue = value;
- BasePriority = priority;
- }
- else
- {
- _baseValue = default;
- BasePriority = BindingPriority.Unset;
- }
}
///
@@ -68,17 +58,6 @@ namespace Avalonia.PropertyStore
SetAndRaiseCore(owner, (StyledPropertyBase)value.Property, (T)value.GetValue()!, priority);
}
- public override void SetAndRaise(
- ValueStore owner,
- IValueEntry value,
- BindingPriority priority,
- IValueEntry baseValue,
- BindingPriority basePriority)
- {
- Debug.Assert(priority != BindingPriority.LocalValue);
- SetAndRaiseCore(owner, (StyledPropertyBase)value.Property, (T)value.GetValue()!, priority, (T)baseValue!, basePriority);
- }
-
public void SetLocalValueAndRaise(
ValueStore owner,
StyledPropertyBase property,
@@ -165,11 +144,6 @@ namespace Avalonia.PropertyStore
protected override object? GetBoxedValue() => Value;
- protected override object? GetBoxedBaseValue()
- {
- return BasePriority != BindingPriority.Unset ? _baseValue : AvaloniaProperty.UnsetValue;
- }
-
private void SetAndRaiseCore(
ValueStore owner,
StyledPropertyBase property,