我正在用 MVVM 编写代码。
我有一个 WinForm,它将调用一个打开新窗口(WPF 窗口)的方法。视图窗口应显示银行帐户详细信息。(带有银行客户所有交易的网格)。
MyBankAccountWindow win = new MyBankAccountWindow();
win.ViewModel.Initialize(BankAccountID)
win.ShowDialog()
我正在使用一个视图模型,它将公开客户的交易细节。数据初始化将基于客户,因此我需要根据客户 ID 创建 ViewModel。
我的 ViewModel 在 xaml 中声明,因此它在窗口创建过程中被初始化。现在我在后面的窗口代码中使用 ViewModel 的属性,但我不喜欢这种方法,因为:
我创建了一个 ViewModel,直到调用者没有进行 Initialize 才准备好使用。(在创建窗口的代码中)
我在我的窗口代码后面有一个视图模型的属性。
我应该采取什么方法来避免这种情况?