Wpf 我应该注射吗?我该怎么做?
好的,我正在WPF中使用MVVMC(或MVCVM)模式与Microsoft Prism合作 在聊天室模块中,我有一系列视图、视图模型和一个控制器 对于我的观点Wpf 我应该注射吗?我该怎么做?,wpf,dependency-injection,prism,Wpf,Dependency Injection,Prism,好的,我正在WPF中使用MVVMC(或MVCVM)模式与Microsoft Prism合作 在聊天室模块中,我有一系列视图、视图模型和一个控制器 对于我的观点 ChatArea视图-显示要阅读的聊天信息。这是托管在一个TabControl区域内,这样我就可以在用户和其他用户之间拥有聊天窗口,或者可能是文件传输窗口,等等 UserAreaView-这是一个用户列表。右键单击具有上下文菜单以与它们交互。。。比如发送文件或耳语 MessageAreaView-用户在此处键入要发送给所有其他用户的消息
- ChatArea视图-显示要阅读的聊天信息。这是托管在一个TabControl区域内,这样我就可以在用户和其他用户之间拥有聊天窗口,或者可能是文件传输窗口,等等
- UserAreaView-这是一个用户列表。右键单击具有上下文菜单以与它们交互。。。比如发送文件或耳语
- MessageAreaView-用户在此处键入要发送给所有其他用户的消息
#region Views
ChatAreaView viewChatArea;
UserListView viewUserArea;
MessageView viewMessageArea;
LoginPromptView viewLoginPrompt;
#endregion
#region ViewModels
ChatAreaViewModel viewModelChatArea;
UserAreaViewModel viewModelUserArea;
MessageAreaViewModel viewModelMessageArea;
LoginPromptViewModel viewModelLoginPrompt;
#endregion
如果我为视图和视图模型定义接口,并在控制器中对这些接口而不是具体实现进行操作,事情会变得更加整洁、耦合性更低吗?然后,我可以将它们注册到Module类中的容器中(本质上是每个模块的根)吗
我能从中得到什么?我将如何为每个视图实现一个接口以将它们与其他视图区分开来?他们什么都不做,除了有XAML。。。而ViewModel除了具有某些属性之外,实际上什么都不做。这些属性可能会发生变化。例如,在UserAreaViewModel上,我肯定希望添加更多命令,以便用户可以以不同的方式与另一个用户交互
有人能帮我吗?在我看来,我想我应该把这些东西抽象出来,但我真的不知道我应该用什么逻辑方法来处理它,或者说这样做是否明智。我能得到什么
谢谢你抽出时间。下图是我正在研究的一个例子。忽略“添加新项目”按钮和所有内容的样式。。。这不是我现在正在做的