我正在使用 WinUI 3 和 .NET Core 8 开发一个应用程序,并已安装
CommunityToolkit.WinUI.Controls
,但在尝试在 XAML 中使用 SettingsCard
时遇到错误。以下是我收到的错误消息:
Error (active) CS0234: The type or namespace name 'Controls' does not exist in the namespace 'CommunityToolkit.WinUI' (are you missing an assembly reference?)
Error XLS0429: Undefined namespace. The 'using' URI refers to a namespace 'CommunityToolkit.WinUI.Controls' that could not be found.
Error XLS0414: The type 'controls:SettingsCard' was not found. Verify that you are not missing an assembly reference and that all referenced assemblies have been built.
我已将以下行添加到我的 XAML 文件中:
xmlns:controls="using:CommunityToolkit.WinUI.Controls"
xmlns:ui="using:CommunityToolkit.WinUI"
我的 XAML 代码如下所示:
<Page
x:Class="Easy_Minecraft_Gui_WinUI3.SettingsPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:Easy_Minecraft_Gui_WinUI3"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:controls="using:CommunityToolkit.WinUI.Controls"
xmlns:ui="using:CommunityToolkit.WinUI"
mc:Ignorable="d"
Background="Transparent">
<Grid>
<StackPanel Spacing="4">
<controls:SettingsCard x:Name="settingsCard"
Description="This is a default card, with the Header, HeaderIcon, Description and Content set."
Header="This is the Header"
HeaderIcon="{ui:FontIcon Glyph=}"
IsEnabled="{x:Bind IsCardEnabled, Mode=OneWay}">
<ComboBox SelectedIndex="0">
<ComboBoxItem>Option 1</ComboBoxItem>
<ComboBoxItem>Option 2</ComboBoxItem>
<ComboBoxItem>Option 3</ComboBoxItem>
</ComboBox>
</controls:SettingsCard>
</StackPanel>
</Grid>
</Page>
我已检查了参考资料和设置,但仍然无法解决此问题。有没有人遇到过类似的问题,有什么办法解决吗?
谢谢!
CommunityToolkit.WinUI.Controls 的安装: 我已通过 NuGet 在我的项目中安装了
CommunityToolkit.WinUI.Controls
包。
XAML 命名空间声明:我在 XAML 文件中添加了适当的命名空间声明以引用工具包中的控件:
xmlns:controls="using:CommunityToolkit.WinUI.Controls"
xmlns:ui="using:CommunityToolkit.WinUI"
重建项目:添加引用后,我多次重建项目以确保所有依赖项都得到正确解决。
清理解决方案:我清理了解决方案,然后重建它以消除可能导致错误的任何缓存问题。
检查更新:我确保 Visual Studio 和社区工具包都已更新到最新版本。
我今天也遇到了同样的问题。您需要确保您的目标框架匹配。在撰写本文时,该软件包只有一个版本,它需要:
<TargetFramework>net8.0-windows10.0.22621.0</TargetFramework>