用户控件不会在xaml中创建datacontext的实例

时间:2015-07-26 16:31:21

标签: c# wpf xaml

我试图找出为什么我创建的UserControl无法在xaml中设置其DataContext

PreTranslateMessage()

如果我这样做会抛出一个xamlparse异常,说DataContext = null。

如果我改为代码隐藏

<UserControl.DataContext>
    <vm:MainViewModel/>
</UserControl.DataContext>

完全没有问题。

MainView和MainViewModel都是dll项目。 主窗口仅包含MainView。 MainView和MainviewModel代码:

this.DataContext = new MainViewModel();

1 个答案:

答案 0 :(得分:0)

我终于明白了。

因为view和viewmodel都是两个单独的.dll而app(window)是一个单独的项目。

应用程序需要引用.dll,即使它只是直接使用视图