WPF-Combobox SelectedItem не устанавливается?

у меня есть ComboBox, который имеет свой ItemsSource привязанный к static List<CustomSettings> вариантов. ComboBox является частью формы, которая привязана к классу CustomObject, и одним из свойств этого класса является CustomSettingProperty.

Я хотел бы привязать SelectedItem ComboBox к свойству, указанному в CustomObject, однако SelectedItem="{Binding Path=CustomSettingProperty}" не устанавливает выбранный по умолчанию элемент. Используя точки останова, я вижу, что он называет get; метод, поэтому я думаю, что проблема может быть в том, что CustomSettingProperty создается отдельно от List<CustomObject> поэтому WPF не думает, что это тот же элемент.

существует ли простой способ сделать это? Или, возможно, альтернатива, поскольку класс CustomSettings содержит идентификатор?

1 ответов


Если выбранный элемент не является тем же экземпляром, который содержится в списке, необходимо переопределить Equals() в CustomObject, чтобы ComboBox знал, что это тот же объект.

Если это тот же экземпляр, возможно, это просто такая вещь, как установка BindingMode в TwoWay:

SelectedItem="{Binding Path=CustomSettingProperty,Mode=TwoWay}"