WinUI3项目使用H.NotifyIcon遇TaskbarIcon符号解析错误求助
WinUI3中H.NotifyIcon组件使用错误排查与解决
错误原因
- 你混淆了两个库的定位:
H.NotifyIcon是跨平台抽象核心库,本身不包含WinUI3平台的具体实现代码,TaskbarIcon这类平台专属控件只在对应平台的实现包里才有,所以直接引核心库肯定找不到这个类。 - 官方推荐的
H.NotifyIcon.WinUI才是专门适配WinUI3的包,你遇到的“版本问题”大概率是包版本和你的WinUI3 SDK(WinAppSDK)版本不匹配导致的,而非包本身有问题。
解决步骤
- 卸载已安装的
H.NotifyIcon核心库- 打开NuGet包管理器,找到
H.NotifyIcon后点击卸载 - 或者用Package Manager Console执行命令:
Uninstall-Package H.NotifyIcon
- 打开NuGet包管理器,找到
- 安装匹配版本的
H.NotifyIcon.WinUI包- 在NuGet包管理器中搜索
H.NotifyIcon.WinUI,优先选择和你项目WinAppSDK版本对应的包(比如项目用WinAppSDK 1.4,就找版本号标注适配1.4的包) - 如果找不到完全匹配的,可尝试安装最新稳定版,同时把项目的WinAppSDK更新到对应最新稳定版
- 在NuGet包管理器中搜索
- 确认命名空间引用正确
- XAML文件中添加命名空间:
xmlns:tb="using:H.NotifyIcon.WinUI" - C#代码文件中添加引用:
using H.NotifyIcon.WinUI;
- XAML文件中添加命名空间:
- 正确使用
TaskbarIcon控件- XAML示例:
<tb:TaskbarIcon IconSource="Assets/YourIcon.ico" ToolTipText="自定义提示文本"/> - C#代码示例:
var taskbarIcon = new TaskbarIcon { IconSource = new BitmapIcon { UriSource = new Uri("ms-appx:///Assets/YourIcon.ico") }, ToolTipText = "自定义提示文本" };
- XAML示例:
内容的提问来源于stack exchange,提问作者chirag goyal
相关产品推荐
相关产品推荐

