Simple WPF: WPF使用Windows API发送Toast通知

news/2024/9/19 15:42:57/文章来源:https://www.cnblogs.com/mrchip/p/18302512

以前看到Windows 10的气泡通知觉得很有意思,但是一直不知道该如何实现。最近一次上网冲浪过程中偶然的机会看到了相关资料就自己来试试。本文介绍了在WPF框架下发送Win10 Toast通知的方法。
代码见Github仓库

m7XQ_rvDolg0qX20FU7dVmQhHDcu9ueVN37dMdlAv4g.png

简单Toast通知的使用

简单的Toast通知

new ToastContentBuilder().AddArgument("action", "viewConversation").AddArgument("conversationId", 9813).AddText("Andrew sent you a picture").AddText("Check this out, The Enchantments in Washington!").Show();

vOVhBaTWHOoo7s8EK6btz1srofpwNFgcBj01dsf3Ebc.png

带按钮的Toast通知

var builder = new ToastContentBuilder().AddArgument("action", "viewConversation").AddArgument("conversationId", 9813).AddText("Some text").AddButton(new ToastButton().SetContent("Archive").AddArgument("action", "archive")).AddButton(new ToastButton().SetContent("Show").AddArgument("action", "archive"));
builder.Show();

PoI-OtzjirVaihlScpCLnXiYCnGnUaQbXyzsgcCt9l0.png

工程和Windows SDK的设置

如果看不到Show 方法,则可以注意文档中的这句话

Not seeing the Show() method? Make sure you have version 7.0, and if you're using .NET 6 (or later), then your TFM must be net6.0-windows10.0.17763.0 or greater

要使用Toast的API 需要.NET 6 以上,并设置目标操作系统为Windows,版本至少需要10.0.17763.0

eIzojWKaHea_Sb4tK2sXKpLcsHb2fJDfPFvPNxdujrY.png

参考链接

https://learn.microsoft.com/zh-cn/windows/apps/design/shell/tiles-and-notifications/send-local-toast?tabs=desktop

https://learn.microsoft.com/zh-cn/windows/apps/design/shell/tiles-and-notifications/adaptive-interactive-toasts?tabs=toolkit

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/743965.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

卡通AI图片生成器

AI卡通生成器是一个AI工具,你可以毫不费力地用文本创建美丽的卡通图像! AI卡通生成器简介:创意与轻松相遇的地方!  有了我们创新的人工智能工具,用文字制作迷人的卡通图像就像点击一样简单。无论你是将可爱的人工智能动物带到生活中,还是用人工智能故事漫画讲述引人入胜…

[HGAME 2023 week3]kunmusic wp

今天写了一道Hgame的题,挺有意思的,写个blog记录一下 下载附件得到三个文件,先用dnspy打开dll文件,找到main函数,发现为对资源中data的加密。因此将data直接dump下来,对其进行解密,并将解密后的文件保存为111,脚本如下: file = open(rC:\Users\usr\Desktop\ctf题库\re…

Python中 `__pycache__` 文件夹是什么?

引言 当你编写一个独立的Python脚本时,目录结构看起来可能没什么特别。但随着项目逐渐变得复杂,你引言 当你编写一个独立的Python脚本时,目录结构看起来可能没什么特别。但随着项目逐渐变得复杂,你可能会倾向于将一些功能分离到其他模块或包中。这时,你可能会发现在源文件…

WPF 滚动轮播文字(走马灯效果)

使用 Control 实现自定义控件,源码可加微信号:microsoft-zh

0185-在 VSCode 中远程调试

环境Time 2022-11-13 WSL-Ubuntu 22.04 QEMU 6.2.0 Rust 1.67.0-nightly VSCode 1.73.1前言 说明 参考:https://os.phil-opp.com/minimal-rust-kernel 目标 将上一节编写的可执行文件制作成 QEMU 可以启动的镜像。使用 QEMU 启动后,使用 VSCode 远程调试。 启动 QEMU 脚本 #!…

mac整体配置安装hadoop

根据自身芯片系统下载虚拟机 下载vm虚拟机:Download VMware Fusion | VMware VMware Fusion对应的CentOS8下载的版本为:CentOS-8-XX-aarch64-dvd-custom-XX.iso。 配置yum:参考博客:https://blog.csdn.net/qq_29759839/article/details/125860618 core-site.xml <confi…

理想的文件摆渡系统,了解一下!

"文件摆渡"通常指在不同系统、设备或平台之间传输文件的过程,可以是手动摆渡,比如使用USB闪存驱动器、移动硬盘等物理存储设备来移动文件,也可以是自动化摆渡,比如通过网络或专门的文件摆渡系统来实现文件的传输。为了保护内部数据安全,企业通过会进行网络隔离,…

想看源码但是无从下口怎么办?

相信不少同学都有欧阳这种情况,年初的时候给自己制定了一份关于学习英语和源码的详细年度计划。但是到了实际执行的时候因为各种情况制定的计划基本都没有完成,年底回顾时发现年初制定的计划基本都没完成。痛定思痛,第二年年初决定再次制定一份学习英语和源码的详细年度计划…

C++11标准库 互斥锁 mutex 梳理

目录<mutex>std::call_once函数例程:使用call_once实现的单例模式std::mutex类 -- 独占互斥锁成员函数std::recursive_mutex类 -- 递归互斥锁使用注意:描述:std::timed_mutex类 -- 超时互斥锁描述:成员函数:std::recursive_timed_mutex类std::lock_guard模板类函数原型:s…

【译】The danger of TaskCompletionSource class

来自 Sergey Tepliakov的另一篇 https://devblogs.microsoft.com/premier-developer/the-danger-of-taskcompletionsourcet-class/#comments当使用async/await时,如果您想手动控制任务的生存期,TaskCompletionSource<T>类是一个非常有用的工具。下面是TaskCompletionSo…

Windows版PostgreSQL数据库下载及安装教程(关系型数据库管理系统)

前言 PostgreSQL是一个功能非常强大的、源代码开放的客户/服务器关系型数据库管理系统(RDBMS)。PostgreSQL最初设想于1986年,当时被叫做Berkley Postgres Project。该项目一直到1994年都处于演进和修改中,直到开发人员Andrew Yu和Jolly Chen在Postgres中添加了一个SQL(Str…

异构数据源数据同步 → 从源码分析 DataX 敏感信息的加解密

开心一刻 出门扔垃圾,看到一大爷摔地上了 过去问大爷:我账户余额 0.8,能扶你起来不 大爷往旁边挪了挪 跟我说到:孩子,快,你也躺下,这个来钱快! 我没理大爷,径直去扔了垃圾 然后飞速的躺在了大爷旁边,说道:感觉大爷带飞!书接上回 通过 异构数据源同步之数据同步 → …