Wpf 视图模型/视图关系和验证
在我们的WPF应用程序中,我们希望使用基本的MVVM模式。我们在讨论它时,发现了一些关于视图模型/视图关系和验证的不确定性。你会说下面是一个很好的理解吗Wpf 视图模型/视图关系和验证,wpf,mvvm,Wpf,Mvvm,在我们的WPF应用程序中,我们希望使用基本的MVVM模式。我们在讨论它时,发现了一些关于视图模型/视图关系和验证的不确定性。你会说下面是一个很好的理解吗 每个视图都有且只有一个ViewModel 而ViewModel的用途是 为其视图提供数据和 处理其视图的所有事件和 命令。(是否存在一个ViewModel服务于两个视图的实例,例如标准XAML输入表单视图和CSV导入,后者提供与表单相同的数据,因此需要进行相同的验证?) 验证仅由ViewModel处理,例如视图 抛出ChangedFocus或
- 每个视图都有且只有一个ViewModel 而ViewModel的用途是 为其视图提供数据和 处理其视图的所有事件和 命令。(是否存在一个ViewModel服务于两个视图的实例,例如标准XAML输入表单视图和CSV导入,后者提供与表单相同的数据,因此需要进行相同的验证?)
- 验证仅由ViewModel处理,例如视图 抛出ChangedFocus或SaveButtonPressed事件等
- 这个模型相当愚蠢,只是 基于一个或多个数据库的数据结构 数据库中有更多表,但 模型本身无法处理 例如,验证。甚至是ViewModel建立并保存对象的可观察集合,例如“客户”,而不是模型本身
它只是你想要的那样愚蠢。如果愿意,您可以在模型中包含验证和业务规则。我完全同意上面所说的。只需一条注释:您的视图模型可以在内部使用其他视图模型。使用这种方法,您可以将视图划分为两个区域,这些区域由不同的视图模型提供服务。只需使用ContentPresenter,将其绑定到Required view model属性(该属性获取Required view model),并使用DataTemplate将Required view与视图模型关联。是的,我在许多示例中都看到了这一点,其中ViewModel中包含一组ViewModels,非常感谢提醒