在 MVVM 中,每个 View 都有一个 ViewModel。我理解的视图是一个窗口、页面或用户控件,您可以将视图模型附加到其中,视图从中获取其数据。
但是DataTemplate也可以呈现 ViewModel 的数据。
所以我理解 DataTemplate 是另一个“视图”,但似乎存在差异,例如 Windows、Pages 和 UserControls 可以定义自己的 .dll,一种类型通过附加模板与 DataContect 绑定,以便 Windows、Pages , UserControls 可以通过ServiceLocator/Container等动态附加到 ViewModels。
在 UI 上呈现 ViewModel 的数据时,DataTemplates 与 Windows/Pages/UserControls 有何不同?除了这四种之外,还有其他类型的“视图”吗?