C# JumpList.GetJumpList不包含最近的项目

C# JumpList.GetJumpList不包含最近的项目,c#,wpf,jump-list,recent-file-list,C#,Wpf,Jump List,Recent File List,因此,我的WPF应用程序在App.xaml <JumpList.JumpList> <JumpList ShowRecentCategory="True"/> </JumpList.JumpList> 此列表为空,除非windows识别与我的应用程序关联的某些文件。我通过Inno设置成功地关联了我的自定义文件扩展名,跳转列表很好地显示在win7开始菜单+任务栏中。点击这样一个“最近的文件”调用我的应用程序,并附加一个命令行参数(文件名),我可以在

因此,我的WPF应用程序在
App.xaml

<JumpList.JumpList>
    <JumpList ShowRecentCategory="True"/>
</JumpList.JumpList>

此列表为空,除非windows识别与我的应用程序关联的某些文件。我通过Inno设置成功地关联了我的自定义文件扩展名,跳转列表很好地显示在win7开始菜单+任务栏中。点击这样一个“最近的文件”调用我的应用程序,并附加一个命令行参数(文件名),我可以在应用程序启动时直接打开该文件

目标:在应用程序中显示最近的文件(不仅仅在win7任务栏上)。 考虑文件菜单(例如Visual Studio:File>Recent Files>…)或类似于显示要跳转到的最近项目的起始页

问题:JumpList只包含自定义任务,不包含最近的文件。可以通过

List<JumpItem> items = JumpList.GetJumpList(Application.Current).JumpItems
List items=JumpList.GetJumpList(Application.Current).JumpItems
这是JumpTask/JumpPath实例的列表。我确实在这里找到了自定义创建的任务(例如,如果我在
App.xaml
中定义了一个任务),但没有在windows(开始菜单/任务栏)中显示的最新文件。因此,在我的例子中,windows显示了10个最新的文件,但在应用程序中,我找不到显示它们的方法


如果我从
App.xaml
调用JumpList定义,上述调用将返回null而不是JumpList(我认为我已经覆盖了win7 JumpList,但没有)。

您需要手动将最近的项添加到JumpList中

var jumpTask = new JumpTask
{
    Title = fileName,
    Arguments = fullPath
};
JumpList.AddToRecentCategory(jumpTask)

我知道如何从我的应用程序中手动添加额外的项目。问题是:如何从windows获取跳转列表项?