正常に動作する C# WPF MVVM アプリケーションがあります。
唯一の問題は、テキストボックスを変更してメニューをクリックしたときです。別のコントロールをクリックせずにこれを行うと、テキストボックスがフォーカスを失っていないため、view->viewmodel イベントは発生しません。私が間違っている場合は修正してください。ただし、RaisePropertyChanged は LostFocus (または OnBlur、または同様のイベント) でのみ発生すると思います。
そのため、テキストボックスを編集した直後にメニューの保存ボタンをクリックすると、ビューモデルは古い値を使用してデータを保存します。
したがって、再開します:
このシーケンスは正常に機能します。
- テキストボックスを編集する
- 別のコントロールをクリックします
- RaisePropertyChanged が発生し、viewmodel が更新されます
- メニューの保存ボタンをクリック
- 正しい値で保存されたデータ
このシーケンスは私にエラーを与えます:
- テキストボックスを編集する
- メニューの保存ボタンをクリック
- 正しい値で保存されたデータ
これを解決するには?