Browse Source

[TreeView] ensure SelectedItem field is set before Adding items to SelectedItems

Dan Walmsley 2 years ago
parent
commit
e77de043b6
1 changed files with 4 additions and 2 deletions
  1. 4 2
      src/Avalonia.Controls/TreeView.cs

+ 4 - 2
src/Avalonia.Controls/TreeView.cs

@@ -303,12 +303,14 @@ namespace Avalonia.Controls
 
         private void SelectSingleItem(object item)
         {
+            var oldValue = _selectedItem;
             _syncingSelectedItems = true;
-            SelectedItems.Clear();            
+            SelectedItems.Clear();
+            _selectedItem = item;
             SelectedItems.Add(item);
             _syncingSelectedItems = false;
 
-            SetAndRaise(SelectedItemProperty, ref _selectedItem, item);            
+            RaisePropertyChanged(SelectedItemProperty, oldValue, _selectedItem);    
         }
 
         /// <summary>