VisualStudio UWP/XAML设计器未显示UserControl | 由于缺少程序集,元素"foo"无法显示

5
我在项目文件夹中有两个项目:
  • HtSuite.UWP | Library
  • HtSuite.UWP.Leitstand | Applicaton
Library 中有一个名为 NamePasswordControlUserControl,我可以在 XAML | Designer 中轻松编辑它。

enter image description here

当我将NamePasswordControl放置在LoginView.xaml上(它也在Library中),我遇到了以下错误:

由于缺少程序集,无法显示元素“passwordView”。构建应用程序后,您可以查看此控件

enter image description here

当我运行应用程序时,一切都按预期工作。

enter image description here

以下是我到目前为止尝试过的步骤(均未成功):
  • 清理解决方案
  • 重新构建项目
  • 删除缓存
  • dotnet clean
  • dotnet restore
  • 重启Windows
  • 升级VisualStudio(v16.6.0)并尝试使用v16.7.0 preview 1
有人知道如何修复预览版吗?

具有相同行为的最小测试项目:

https://files.dominic-jonas.de/stackoverflow/ClassLibrary2.zip

一个类库中有一个UserControl和一个需要显示的页面。然而,错误也会显示在那里,无法预览。

日志

  • 2020年5月28日 Nico Zhu - MSFT 成功加载了TestProject的预览版(visual studio 2017 v15.9.17)。但我无法在vs2017中显示预览。


你尝试过手动删除lib和app的bin和obj文件夹,然后重新构建解决方案吗? - Nico Zhu
问题仍然存在。在HtSuite.UWP.Leitstand项目中,我可以在XAML设计器中显示UserControl而没有任何问题。但是在包含UserControlHtSuite.UWP项目内却无法显示。 - Dominic Jonas
可以尝试移除库引用并重新添加到应用程序中(在添加到应用程序之前重新构建库)。 - Nico Zhu
好的,我会检查。 - Nico Zhu
1
为了进行测试,如果我在打开XAML设计器之前构建解决方案,则“WindowsHelloControl”将在设计器中正确显示。 - Nico Zhu
显示剩余2条评论
2个回答

0

这个问题是微软的一个bug,已经在开发者社区中讨论过。

当时它被针对Windows 10和VS 2017进行了解决,并且据说最新版本已经修复了它。但是可能这个问题在后来的版本中重新出现了,所以您也应该在开发者社区上发布一个工单。


谢谢您的回复。我已经在 MSDNVisualStudio 论坛上发布了帖子。但实际上我没有得到任何回应。 - Dominic Jonas

0
尝试按照以下步骤进行操作:(在执行这些步骤之前,请确保您正在使用最新的Visual Studio版本)
1-) 在您的XAML视图中,注释掉(或删除)所有损坏的控件(在您的情况下,应该注释掉所有标签和xmlns:login="..."引用)。重要的是:在最后一步之前不要尝试调用任何损坏的控件。
2-) 重新构建解决方案。然后获取解决方案的位置(路径),并关闭Visual Studio。
3-) 转到项目位置(路径)并删除隐藏的“.vs”文件夹。
4-) 打开并重新构建解决方案。
5-) 再次取消注释(或重新编写)您在XAML视图中的控件。
对我来说有效。希望对遇到此问题的人也有帮助。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接