WPF用户控制直接内容

本文关键字:用户 控制 WPF | 更新日期: 2023-09-27 18:23:50

得到了这个似乎很流行的问题,但不确定这里发生了什么。我在Visual studio 2015社区中有一个解决方案,它有一个asp.net webapi项目,一个WPF项目,使用nuget添加了棱镜库。我正在使用Prism 6,希望创建一个包含模块的解决方案。一切都很好,直到我在模块中添加了一个用户控件,然后我得到了错误"类型‘usercontrol’不支持直接内容",我在网格标记和我放在它下面的任何东西下都看到了错误。我在xaml文件中添加的只是新的棱镜名称空间和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>

WPF用户控制直接内容

感谢您的帮助。我终于想通了。我添加了参考系统Xaml,它就消失了。显然,IComponentConnector已从System.Windows.Markup移动到System.Xaml。添加引用解决了这个问题,并且所有内容都构建得至少没有错误。考虑到我正在开发的模块一开始是类库,所以不像创建wpf项目那样,在创建项目时不会添加System.Xaml,这并不奇怪。希望这能让某人摆脱我过去一天左右的困惑。