From 83fea9c3a34ffff3cb9361f5de0b81dd1d3b7e21 Mon Sep 17 00:00:00 2001 From: Stephane Delcroix Date: Wed, 15 Mar 2023 19:41:09 +0100 Subject: [PATCH] [C] Properly set SelectedItem and Index (#13740) fixes #6571 Avoid clearing bindings, by setting the BP instead of the property fixes #6571 --- src/Controls/src/Core/Picker.cs | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/src/Controls/src/Core/Picker.cs b/src/Controls/src/Core/Picker.cs index 87ee279e4a29..224a844ee226 100644 --- a/src/Controls/src/Core/Picker.cs +++ b/src/Controls/src/Core/Picker.cs @@ -340,27 +340,27 @@ void UpdateSelectedIndex(object selectedItem) { if (ItemsSource != null) { - SelectedIndex = ItemsSource.IndexOf(selectedItem); + SetValueCore(SelectedIndexProperty, ItemsSource.IndexOf(selectedItem)); return; } - SelectedIndex = Items.IndexOf(selectedItem); + SetValueCore(SelectedIndexProperty, Items.IndexOf(selectedItem)); } void UpdateSelectedItem(int index) { if (index == -1) { - SelectedItem = null; + SetValueCore(SelectedItemProperty, null); return; } if (ItemsSource != null) { - SelectedItem = ItemsSource[index]; + SetValueCore(SelectedItemProperty, ItemsSource[index]); return; } - SelectedItem = Items[index]; + SetValueCore(SelectedItemProperty, Items[index]); } ///