You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Windows 10通知中心创建自定义快速操作按钮?

嘿James,当然有办法实现这个需求!在Windows 10里给你的应用添加自定义快速操作按钮到通知中心,其实主要靠UWP的通知API就能搞定,我给你一步步拆解:

实现步骤

1. 确认应用适配前提

首先得说清楚:这个方案原生支持UWP应用;如果你的应用是传统Win32程序,得先通过Desktop Bridge打包成MSIX格式,才能用上UWP的通知能力,后续步骤和UWP一致。

2. 编写快速操作按钮的Toast模板

快速操作按钮需要嵌套在Toast通知的XML模板里,你可以自定义按钮文字和触发行为。示例模板如下:

<toast>
  <visual>
    <binding template="ToastGeneric">
      <text>你的应用名称</text>
      <text>点击按钮快速启动应用</text>
    </binding>
  </visual>
  <actions>
    <!-- 这里就是自定义的快速操作按钮 -->
    <action
      content="启动我的应用"
      arguments="launchFromQuickAction"
      activationType="Foreground"/>
  </actions>
</toast>

参数说明:

  • activationType="Foreground":点击按钮时直接将应用启动到前台
  • arguments:可以传递自定义参数,方便应用识别是从这个按钮启动的

3. 在应用中发送带按钮的Toast通知

以C#为例,在你的应用代码里加载模板并发送通知,这样通知就会常驻通知中心,按钮也会随之显示:

using Windows.UI.Notifications;
using Windows.Data.Xml.Dom;

// 加载Toast模板
XmlDocument toastXml = ToastNotificationManager.GetTemplateContent(ToastTemplateType.ToastGeneric);

// 设置通知文本内容
XmlNodeList textNodes = toastXml.GetElementsByTagName("text");
textNodes[0].AppendChild(toastXml.CreateTextNode("你的应用名称"));
textNodes[1].AppendChild(toastXml.CreateTextNode("点击按钮快速启动"));

// 添加快速操作按钮
XmlElement actionsElement = toastXml.CreateElement("actions");
XmlElement launchAction = toastXml.CreateElement("action");
launchAction.SetAttribute("content", "启动应用");
launchAction.SetAttribute("arguments", "launchFromQuickAction");
launchAction.SetAttribute("activationType", "Foreground");
actionsElement.AppendChild(launchAction);
toastXml.DocumentElement.AppendChild(actionsElement);

// 创建并发送通知
ToastNotification toast = new ToastNotification(toastXml);
ToastNotificationManager.CreateToastNotifier().Show(toast);

4. 处理按钮启动的特殊逻辑(可选)

如果需要区分应用是从快速操作按钮启动,还是常规启动,可以在App.xaml.cs的OnLaunched方法里读取启动参数:

protected override void OnLaunched(LaunchActivatedEventArgs e)
{
    // 判断是否来自快速操作按钮
    if (!string.IsNullOrEmpty(e.Arguments) && e.Arguments == "launchFromQuickAction")
    {
        // 在这里执行特殊逻辑,比如直接跳转到应用的某个功能页面
    }

    // 常规启动逻辑...
}

5. 关键注意事项

  • 快速操作按钮和Toast通知绑定,一旦用户清除了这条通知,按钮就会消失。你可以在应用启动时、或者通过后台任务自动重新发送这条通知,确保按钮常驻。
  • 记得在应用的Package.appxmanifest里开启通知权限,否则通知无法正常发送。

内容的提问来源于stack exchange,提问作者James Stubbs

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 09:13:03