Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Windows通用应用程序共享库代码不为';无法在特定于平台的项目的XAML中正确引用_C#_Xaml_Windows 8.1_Blend_Win Universal App - Fatal编程技术网

C# Windows通用应用程序共享库代码不为';无法在特定于平台的项目的XAML中正确引用

C# Windows通用应用程序共享库代码不为';无法在特定于平台的项目的XAML中正确引用,c#,xaml,windows-8.1,blend,win-universal-app,C#,Xaml,Windows 8.1,Blend,Win Universal App,我对一个通用Windows应用程序和在Design view和Blend中查看用户控件有问题 我在共享库的中有一个BaseUserControl和一些ValueConverter。我在App.xaml中引用了值转换器,BaseUserControl是我想要使用Blend来帮助设计的特定UserControl的基础 我当前在Visual Studio XAML设计器和Blend中遇到设计时错误: 命名空间中不存在名称“BaseUserControl” “使用:MyProject.Controls”

我对一个通用Windows应用程序和在Design view和Blend中查看用户控件有问题

我在共享库的中有一个BaseUserControl和一些ValueConverter。我在App.xaml中引用了值转换器,BaseUserControl是我想要使用Blend来帮助设计的特定UserControl的基础

我当前在Visual Studio XAML设计器和Blend中遇到设计时错误:

命名空间中不存在名称“BaseUserControl” “使用:MyProject.Controls”

designer视图和混合显示一个框,其中包含以下消息:

无效标记-有关详细信息,请查看错误列表

我可以建立项目,并运行它,一切都显示出来,工作良好

如何在Designer/XAML视图和Blend中识别共享库代码

UserControl的定义如下:


...
背后的代码很简单:

名称空间MyProject.Controls.Menu
{
公共密封部分类LeftNavigation:BaseUserControl
{
公共左导航()
{
this.InitializeComponent();
}
}
}

我注意到您使用了
控件:BaseUserControl
,它扩展为
MyProject.controls.BaseUserControl
。但是,在代码隐藏中,您已将名称空间设置为MyProject.Controls.Menu。这将阻止设计器找到您的控件

将控件标记更改为:

xmlns:controls="using:MyProject.Controls.Menu"
或者,将代码隐藏中的名称空间更改为
MyProject.Controls
,然后可以不使用
xmlns:Controls
标记

此外,我还看到设计师没有注意到在Visual Studio 2013中开发的Universal apps(现在称为Windows apps)中共享库中的新控件,即使名称空间是正确的。如果将xaml标记添加到页面时共享库已过时,则可能会发生这种情况。如果发生这种情况,请暂时删除在xaml中包含
控件:BaseUserControl
的任何尝试

然后,清洗溶液并重新构建。这将允许共享库正确重建,并将新标记公开给设计器。最后,在构建成功后重新添加标记并再次构建


我希望这能帮助别人。我今天就在这个问题上苦苦挣扎。

我也有同样的问题。你设法解决了吗?不幸的是,没有。我创建了一个非通用应用程序项目来找出混合点,然后复制了它。