私はコンボボックスを持っています:
<ComboBox x:Name="cbConnection"
ItemsSource="{Binding Source={StaticResource XmlConnectionList}, XPath=//ComboItem}"
DisplayMemberPath="Key"
SelectedValuePath="Value"
SelectedValue="{Binding Path=ConnectionString,ValidatesOnDataErrors=True,UpdateSourceTrigger=PropertyChanged}"
Margin="{StaticResource ConsistentMargins}"
Validation.ErrorTemplate="{StaticResource TextBoxErrorTemplate}" Width="120"
LostFocus="{Binding Path=cbConnection_LostFocus}"/>
ViewModelにあるSelectedValueバインディング「ConnectionString」のセッター内でエラー処理を行うため、LostFocusイベントハンドラーをViewModelに移動しようとしています。ユーザーが同じ ComboBoxItem を再選択した場合に、別のリスト項目が選択されていない限り、OnPropertyChanged が発生するようにしたいと考えています。
上記のバインディングはエラーになります
タイプ 'ComboBox' の 'AddLostFocusHandler' プロパティに 'Binding' を設定できません。「Binding」は、DependencyObject の DependencyProperty でのみ設定できます。
ユーザーの選択に関係なく、ComboBox 内のアイテムの選択時に ViewModel 内で反復可能なコードを起動するにはどうすればよいですか?