私の WPF アプリケーションでUserControls
は、それぞれ独自のViewModelを持ついくつかを作成しました。ViewModelはすべて、PageViewModelBase
変数 " _context " を含むに基づいています。
はUserControls
、独自のWizardViewModelを持つウィザード ダイアログのページとして表示されます。WizardViewModel_masterContext
には、コンストラクターを介してそれぞれの子 ViewModel に渡される変数があります。例えば、
Child1ViewModel vm = new Child1ViewModel(_masterContext);
および Child1ViewModel のコンストラクター:
public Child1ViewModel(Context context) : base(context)
および PageViewModelBase :
protected PageViewModelBase(Context context)
{
_context = context;
}
私の意図は、各 ChildViewModels を介してアクセスできる_masterContext を 1 つだけ持つことです。そして、各子ビューはこれにバインドし、マスター コンテキストのさまざまなフィールドに値を提供できます。
TextBox.Text
ただし、childView1 から childView2 に切り替えるたびに、バインド先のフィールドが "" にリセットされるという問題が発生しています。これが私の MMI コードによるものなのか、それともアプリケーションに _masterContext のインスタンスが複数あるのか、つまり、上記のメソッドが正常に機能していないのかどうかはわかりません。
何が原因でしょうか?