【发布时间】:2020-05-19 19:22:54
【问题描述】:
我是 MVVM 新手,还在学习。我使用下面链接中的文章作为示例来实现一个简单的应用程序,该应用程序带有一个选项卡式工作区,它使用两个视图:“所有客户”和“新客户”。
在上面文章使用的示例中,shell 应用程序 (MainWindowViewModel) 使用带有两个按钮的控制面板:“查看所有客户”和“创建新客户”。当用户单击这些按钮时,相应的视图会在主 shell 的选项卡式工作区中打开。
我现在的问题是:如果我们想在“所有客户”视图上添加一个“创建新客户”按钮,并且当用户单击此按钮时,“新客户”视图将作为一个选项卡式工作区在主视图中打开shell,最好的方法是什么?
我是否需要使用消息服务向所有同事广播/发送“CreateNewCustomer”消息,例如,并让主 shell (MainWindowViewModel) 注册到“CreateNewCustomer”,然后它的操作是实例化“选项卡式工作区中的“新客户”视图?
或者有更好/更简单/更优雅的方法吗?请注意,我没有使用 Prism、MVVMLight 或任何其他 MVVM 框架。作为学习的一部分,我正在构建自己的框架。
非常感谢您抽出宝贵时间回答我的问题。
【问题讨论】:
-
IMO,您可以显示一个对话框窗口,其中包含创建新客户所需的字段,并在应用用户按下确定时将其添加到客户集合中