mvvm模式在wpf应用中的应用
我是wpf新手,正在使用wpf for UI设计客户机-服务器应用程序 我有一个视图-视图模型、数据列表和通信模型 我的视图和视图模型将形成一个用户控件 以下是我的疑问:mvvm模式在wpf应用中的应用,wpf,Wpf,我是wpf新手,正在使用wpf for UI设计客户机-服务器应用程序 我有一个视图-视图模型、数据列表和通信模型 我的视图和视图模型将形成一个用户控件 以下是我的疑问: 如果我将数据列表保存在viewmodel中,其他视图模型如何访问它 若我将数据列表保存在应用程序中,以便任何视图都可以访问它,那个么我的视图模型是否能够通过绑定来更新它 如果我的视图模型直接调用我的通信模型,或者我应该在两者之间保留一个wrapper类,这将是一个很好的设计 塔克斯 sarika您应该考虑使用存储库模式来访问项
sarika您应该考虑使用存储库模式来访问项目列表。您的viewmodels应该与此存储库的抽象(例如IPeopReplepository)相对应,并且您应该通过注入(例如通过构造函数注入)将此存储库的具体实现传递到您的viewmodel中。您的具体实现可以调用您的通信模型来检索项目列表 通常,存储库将返回一个集合类型,该集合类型不是特定于WPF的。您可能希望将其包装在viewmodel上的ObservableCollection中,以便将集合的更改通知UI 每个viewmodel是否检索对此集合的新引用,或者它们是否都访问同一集合,将取决于您的用例,但只要该集合作为DataContext(通常是您的viewmodel)上的属性公开,则您就可以绑定到该集合以从视图中显示和更新它