我看过一个视频,在不同的窗口,主持人都遵循不同的风格。
例如:
在一个窗口中,他使用如下所示:
EmployeeViewModel evm = (EmployeeViewModel)this.DataContext;
evm.Display();
另一方面,他使用的是:
EmployeeViewModel evm = new EmployeeViewModel();
evm.Display();
技术上的差异和使用的最佳方式是什么?请帮我理解其中的差异。
答案 0 :(得分:2)
第一个代码片段检索当前显示的ViewModel。 (它应该进行空检查)
第二个代码片段创建一个ViewModel的新实例。
因为不清楚Display()的作用,很难解释两个片段的效果之间的区别,但可能是第二个片段是忽略View的ViewModel的(单元)测试。
据我所知,没有最好的方法,因为这两个片段都有不同的用途。