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

如何使用UWP JumpList API为SecondaryTile创建的任务栏图标自定义跳转列表?

为UWP SecondaryTile自定义任务栏跳转列表

要给通过SecondaryTile创建的任务栏图标设置独立的自定义跳转列表,核心是将JumpList与该SecondaryTile对应的窗口HWND绑定,而非使用默认的全局JumpList。以下是具体实现方案:

核心逻辑

默认的JumpList.LoadCurrentAsync()加载的是当前活跃窗口(通常为主应用窗口)的跳转列表。要为SecondaryTile单独配置,需使用**JumpList.LoadForWindowAsync(HWND)**方法,直接关联到SecondaryTile对应的窗口句柄。

实现代码

1. 引用必要命名空间

确保项目包含以下命名空间:

using Windows.UI.StartScreen;
using WinRT.Interop;

2. 绑定HWND并配置专属JumpList

结合你已有的HWND获取代码,修改跳转列表的创建逻辑:

// 初始化SecondaryTile实例
var secondaryTile = new SecondaryTile(
    "你的SecondaryTile唯一ID",
    "Tile显示名称",
    "激活时传递的参数",
    new Uri("ms-appx:///Assets/SecondaryTileLogo.png"),
    TileSize.Default
);

// 获取SecondaryTile对应窗口的HWND
var window = // 指向SecondaryTile关联的窗口实例
var hwnd = WindowNative.GetWindowHandle(window);
InitializeWithWindow.Initialize(secondaryTile, hwnd);

// 加载该窗口专属的JumpList
var jumpList = await JumpList.LoadForWindowAsync(hwnd);

// 清空默认项,添加自定义跳转项
jumpList.Items.Clear();
// CreateWithArguments参数:第一个是启动应用时的传递参数,第二个是跳转项显示文本
jumpList.Items.Add(JumpListItem.CreateWithArguments("secondary_tile_foo", "Foo(SecondaryTile专属)"));

// 可选:隐藏系统默认组(如「最近文件」),仅显示自定义项
jumpList.SystemGroupKind = JumpListSystemGroupKind.None;

// 保存配置
await jumpList.SaveAsync();

3. 处理跳转项激活逻辑

用户点击SecondaryTile的跳转项时,应用会被激活,可在App.xaml.cs的OnLaunched或OnActivated方法中处理传递的参数:

protected override void OnLaunched(LaunchActivatedEventArgs e)
{
    if (!string.IsNullOrEmpty(e.Arguments))
    {
        switch (e.Arguments)
        {
            case "secondary_tile_foo":
                // 处理从SecondaryTile跳转项启动的业务逻辑
                break;
        }
    }
    // 其他应用初始化逻辑
}

注意事项

  • 需确保HWND对应的窗口已完成初始化,建议在SecondaryTile关联窗口的Loaded事件中执行JumpList配置。
  • 每个SecondaryTile对应独立的窗口实例,其JumpList与主应用、其他SecondaryTile的JumpList相互独立。
  • 测试时需先将SecondaryTile固定到任务栏,右键点击图标即可看到自定义跳转项。

内容的提问来源于stack exchange,提问作者Muhammad Rehan Saeed

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.02 16:13:17