我正在使用MVVM模式来创建WPF独立应用程序。我的程序在Visual Studio 2008中编译,但我经常在编辑器中为我的DataTemplates收到警告。
在我的MainWindow.xaml中,我定义了以下DataTemplate:
<DataTemplate DataType="{x:Type ViewModels:TagViewModel}">
<Views:TagView />
</DataTemplate>
其中“TagView”派生自Page,而不是普通的UserControl。
这会导致每次在Visual Studio中重新加载设计器时出现以下消息:“无法创建类型为'TagView'的实例。但解决方案编译良好,程序似乎正常工作。
这是Visual Studio 2008编辑器中的错误吗?或者我做错了什么?
答案 0 :(得分:1)
你当然可以做到这一点,而且它在你的程序中运行的事实足够清楚。当设计者无法创建实例时,通常意味着构造函数中有一些代码失败了 - 也许是一些未初始化的单例或类似的东西。仔细查看构造函数代码,看看是否存在设计器中无法解决的依赖关系。