Rac*_*hel 12 wpf user-controls view datatemplate mvvm
我正在阅读这篇文章,作者提出了使用DataTemplates定义ViewModel的建议,这是一种疯狂的方式(#7).我一直这样做,真的那么糟糕吗?
<DataTemplate DataType="{x:Type local:MyViewModel}">
<Grid>
...
</Grid>
</DataTemplate>
Run Code Online (Sandbox Code Playgroud)
我的大多数视图都只是一个定义一个或两个DataTemplate的ResourceDictionary.对我而言,这比为每个ViewModel创建UserControl更有意义.为什么我不想在WPF的可视化树中使用额外的图层?当DataTemplate为我做这件事时,为什么我要照顾将ViewModels映射到Views?这种语法真的是一种"疯子式"吗?
小智 7
没什么不好的,除了非常大的xaml文件和DataTemplates在设计界面上缺乏编辑支持.
如果这些问题伤害了你,你可以随时......
<DataTemplate DataType="{x:Type local:MyViewModel}">
<local:MyViewModelUserControl />
</DataTemplate>
Run Code Online (Sandbox Code Playgroud)