An object-oriented programming language developed by Microsoft that can be used in .NET.
Hi,
Try adding this to the JointMemberID setter to stop extra repeats:
Set(value As Integer)
If _JointMemberID = value Then Return
_JointMemberID = value
OnPropertyChanged(NameOf(JointMemberID))
End Set
It won’t stop the value changing from 2 to 1 if something else is truly setting it, but it can reduce repeated updates and make the problem easier to track.
Also, I tried your Except(...) line in a small test and it didn’t change any values by itself. So the change is likely coming from the UI (MainWindow XAML), especially if cbxJoint has a TwoWay binding like SelectedValue / SelectedItem bound to JointMemberID. When you replace cbxJoint.ItemsSource, the ComboBox may re-pick a selection and write that back into JointMemberID.
Can you share the XAML for cbxPeople and cbxJoint (the ComboBox lines), and any cbxJoint.SelectionChanged code? That will show what’s writing the value.