0

我为我的 UWP 创建了一个自定义跳转列表分组项目:

_jumpList = await JumpList.LoadCurrentAsync();

var mru = Windows.Storage.AccessCache.StorageApplicationPermissions.MostRecentlyUsedList;
string mruToken = mru.Add(file.FileInfo, file._id);

JumpListItem jumplistItem = JumpListItem.CreateWithArguments(mruToken, file.Name);
jumplistItem.GroupName = "Popular files";

_jumpList.Items.Add(jumplistItem);

await _jumpList.SaveAsync();

当我在开始或任务栏上右键单击我的应用程序图标时,跳转列表项确实会正确显示(并且我有一个自定义方法可以在左键单击它们时进行处理,这也可以正常工作)。我遇到的问题是,如果我右键单击此自定义组中的任何跳转列表项,则为每个项目显示的“固定到此列表”和“从此列表中删除”系统上下文菜单操作似乎没有做任何事情。我不确定是否需要编写自定义覆盖方法来处理这些调用,因为它们是自定义组的跳转列表项,在这种情况下,我不知道这个覆盖方法需要什么。或者我缺少的其他东西。

4

1 回答 1

0

不幸的是,微软似乎尚未在 UWP 应用程序中实现此功能,目前仅可用于系统管理的默认项目组。

您可以创建命名的跳转列表项目组,但这会导致显示 pin 按钮,尽管它不起作用。

如果您不想显示 pin 按钮,则必须让默认组中的项目(通过不设置组名):

JumpListItem jumplistItem = JumpListItem.CreateWithArguments(mruToken, file.Name);

//comment this out
//jumplistItem.GroupName = "Popular files"; 

_jumpList.Items.Add(jumplistItem);

await _jumpList.SaveAsync();

然而,这意味着该项目将出现在组名Tasks下。但是,优点是不会显示 pin 按钮。

在此处输入图像描述

于 2016-09-11T13:27:32.297 回答