2010-03-13 38 views
4

对于WPF和MVVM都是新手,我正在研究Josh Smith's article on the MVVM pattern和附带的示例代码。在Josh Smith的MVVM示例中如何构建视图?

通过构建MainWindow对象,将它连接到MainWindowViewModel对象,然后显示主窗口,我可以看到该应用程序在app.xaml.cs中启动。到现在为止还挺好。

但是,我找不到任何实例化AllCustomersViewCustomerView类的代码。对这些视图的构造函数使用“查找所有引用”没有任何结果。我在这里错过了什么?

回答

6

WPF的DataTemplate在做魔术。例如,当您在资源字典中(通常在app.xaml中)使用下面的DataTemplate将CustomerControl的实例设置为CustomerViewModel的实例时。然后你会看到CustomerView usercontrol出现在用户界面中。

<DataTemplate DataType="{x:Type vm:CustomerViewModel}"> 
    <vw:CustomerView /> 
</DataTemplate> 
+0

啊谢谢,现在我在'MainWindowResources.xaml'中找到了映射。 – 2010-03-13 02:04:56

+0

嗨Jobi,我知道它是一个旧帖子,但我有相关的问题,所以我会很高兴得到您的意见:我设法了解,每次我们将内容属性设置为xxxViewModel实例时,将会呈现一个xxxView对象。但我无法找到他在代码中实际设置内容属性......? – 2010-11-08 08:05:40