From 93029b47e35cd2d7f0676712691e2481799d24c6 Mon Sep 17 00:00:00 2001 From: rabbitism Date: Wed, 31 Jan 2024 00:58:31 +0800 Subject: [PATCH] feat: make TargetClasses internal. --- .../ControlClassesInput/ControlClassesInput.cs | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/src/Ursa/Controls/ControlClassesInput/ControlClassesInput.cs b/src/Ursa/Controls/ControlClassesInput/ControlClassesInput.cs index e1b444c..9a54bbb 100644 --- a/src/Ursa/Controls/ControlClassesInput/ControlClassesInput.cs +++ b/src/Ursa/Controls/ControlClassesInput/ControlClassesInput.cs @@ -22,14 +22,17 @@ public class ControlClassesInput: TemplatedControl get => GetValue(TargetProperty); set => SetValue(TargetProperty, value); } - - public static readonly StyledProperty?> TargetClassesProperty = AvaloniaProperty.Register?>( - nameof(TargetClasses)); - - public ObservableCollection? TargetClasses + + + private ObservableCollection _targetClasses; + + internal static readonly DirectProperty> TargetClassesProperty = AvaloniaProperty.RegisterDirect>( + nameof(TargetClasses), o => o.TargetClasses, (o, v) => o.TargetClasses = v); + + internal ObservableCollection TargetClasses { - get => GetValue(TargetClassesProperty); - set => SetValue(TargetClassesProperty, value); + get => _targetClasses; + set => SetAndRaise(TargetClassesProperty, ref _targetClasses, value); } public static readonly AttachedProperty SourceProperty =