XML 命名空间“using:Microsoft.UI.Xaml.Controls”中不存在标记“XamlControlsResources”
Posted
技术标签:
【中文标题】XML 命名空间“using:Microsoft.UI.Xaml.Controls”中不存在标记“XamlControlsResources”【英文标题】:The tag 'XamlControlsResources' does not exist in XML namespace 'using:Microsoft.UI.Xaml.Controls' 【发布时间】:2020-10-13 21:34:45 【问题描述】:我试图使用 WinUI,所以我从 Nuget 安装了插件 Microsoft.UI.Xaml (2.4.2)
并按照说明添加 This <XamlControlsResources xmlns="using:Microsoft.UI.Xaml.Controls"/>
to my App.Xaml
这是我的 App.Xaml 文件
<Application x:Class="WpfApp1.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:WpfApp1"
StartupUri="MainWindow.xaml">
<Application.Resources>
<XamlControlsResources xmlns="using:Microsoft.UI.Xaml.Controls" />
</Application.Resources>
</Application>
但它说:
标签 XML 命名空间中不存在“XamlControlsResources” '使用:Microsoft.UI.Xaml.Controls'
我尝试了 WinUI 插件的旧版本并尝试了 .Net Core 和 Framework,但仍然遇到此问题
【问题讨论】:
【参考方案1】:我相信这个 WinUI 2.4.2 库仅在您创建 UWP 应用程序时才兼容,而不是 WPF 应用程序。
话虽如此,根据this documentation from Microsoft,从 WinUI 3 开始,您将能够在 WPF 中执行此操作。
【讨论】:
是的,你是对的,我打算在阅读这些文件后删除我的问题,但发现你已经回答了我,所以我接受了这个问题,我会保留它,谢谢你的回答 :) 【参考方案2】:添加
<package id="Microsoft.UI.Xaml" version="2.5.0-prerelease.200812001" targetFramework="native" />
如果您浏览并找不到它,请将包含上述内容的行添加到 packages.config 文件检查安装并等待还原显示在 Nuget 工具中。
确保引用在<Import Project="packages\Microsoft.UI.Xaml" version="2.5.0-prerelease.200812001..."
还有<Error Condition="!Exists('packages\Microsoft.UI.Xaml" version="2.5.0-prerelease.200812001..."
在项目的 .vcxproj 文件中。
【讨论】:
实际上我应该使用 UWP 但我一开始并不知道,我使用的是 WPF 这就是为什么它不起作用,但无论如何谢谢以上是关于XML 命名空间“using:Microsoft.UI.Xaml.Controls”中不存在标记“XamlControlsResources”的主要内容,如果未能解决你的问题,请参考以下文章
VS2015-项目默认的XML命名空间必须是MSBuild XML命名空间