コンボボックスにバインドする Observable コレクションがあります。
public ObservableCollection<AnyType> AnyTemplates { get; set; }
そして、このコレクションにバインドするコンボボックス:
<ComboBox Name="cmbKeyA"
Width="100"
SelectedValue="{Binding Path=KeyAName}"
ItemsSource="{Binding Path=DataContext.KeyTemplates, RelativeSource={RelativeSource AncestorType={x:Type UserControl}}}"
DisplayMemberPath="Name"
SelectedValuePath="Name"/>
最初のコレクションは空です。次に、コレクションに新しい値を追加すると、checkBox selectedItem がこの値に変更されます。コレクションアイテムの Name プロパティを変更すると、コンボボックスの selectedItem が変更されます (DisplayMemberPath が新しい値に変更されるのがわかります) が、このアイテムを手動で再度選択するまで、選択された値は変更されません。Name プロパティ コレクション要素は、PropertyChanged イベントを呼び出します。なぜこれが機能しなかったのか。
概要: プログラムでコンボボックス SelectedItem の NameProperty を変更すると、コンボボックスの SelectedItem が変更されますが、コンボボックスで再度手動で変更するまで SelectedValue は更新されません。