这个问题似乎很受欢迎,但不确定这里发生了什么。我在Visual Studio 2015社区中有一个解决方案,它有一个asp.net webapi项目,一个WPF项目,它使用nuget添加了prism库。我正在使用Prism 6并希望创建一个带模块的解决方案。一切正常,直到我将一个usercontrol添加到我的模块然后我收到错误"类型' UserControl'不支持直接内容"我看到网格标签下的错误以及我置于其下的任何内容。我添加到我的xaml文件中的是新的prism命名空间和viewmodellocator代码行。有人能指出我正确的方向。
下面是我创建的Usercontrol,错误位于带有网格标记的行
<UserControl x:Class="LoginModule.Views.LoginForm"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:local="clr-namespace:LoginModule.Views"
xmlns:prism="http://prismlibrary.com/"
prism:ViewModelLocator.AutoWireViewModel="True"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="300">
<Grid>
</Grid>
答案 0 :(得分:2)
感谢您的帮助。我终于弄明白了。我添加了参考System.Xaml,它就消失了。显然,IComponentConnector已从System.Windows.Markup移至System.Xaml。添加引用解决了问题,一切都至少构建没有错误。考虑到我正在开发的模块最初是作为类库,这并不奇怪,因此在创建项目时不会添加System.Xaml,这与创建wpf项目时不同。希望这可以避免某人在最后一天左右的混乱。