【问题标题】:Handling a Jump List event when a file is picked from the "Recent" list of files for a UWP Windows 10 app从 UWP Windows 10 应用的“最近”文件列表中选择文件时处理跳转列表事件
【发布时间】:2017-01-05 02:13:49
【问题描述】:

我正在使用 C#/Xaml 开发 UWP Windows 10 应用,并且我计划扩展其跳转列表的使用。

所以,我知道如何处理自定义跳转列表任务(例如新文件、打开文件等),但对于最近使用列表中的文件,我不知道关于如何拦截从列表中选择的文件(无法找到它的任何文档,而对于跳转列表任务,我能够)。

如果我在应用未打开时选择了一个文件,则启动画面会保持打开状态。如果我在应用程序已经打开时选择一个,它只会将焦点重新放在应用程序上(显然在这种情况下不会发生所需的行为,因为我没有处理此事件)。

如果有办法让我在通过跳转列表文件启动应用程序后调试应用程序(或者当应用程序不在焦点时调用 App 事件,这将很容易弄清楚然后我通过选择一个跳转列表文件将焦点返回到它 - 也许有,但我不知道)。

任何指导将不胜感激!

【问题讨论】:

    标签: c# windows-10 uwp jump-list windows-10-desktop


    【解决方案1】:

    跳转列表激活

    您需要覆盖App.xaml.cs 中的OnFileActivated 事件。启动画面保持显示并且没有任何反应,因为在此事件处理程序中,您需要检查应用程序之前是否已启动,如果没有,您必须创建根框架并激活窗口,类似于 @987654325 @处理程序。

    OnFileActivated事件的签名是

    void OnFileActivated(FileActivatedEventArgs args)
    

    FileActivatedEventArgs 包含属性Files,它是用于启动应用程序的文件列表 (StorageFiles)。在文件激活和跳转列表激活的情况下,这会被适当地初始化。

    未启动时调试应用程序

    这是一个非常有用的提示 - 您可以开始调试并等待应用启动。只需在 OnFileActivated 方法中设置断点,在解决方案资源管理器中转到 UWP 应用项目 Properties,转到 Debug 选项卡并检查 Do不启动,但在启动时调试我的代码

    现在像往常一样开始调试,但应用程序不会启动,调试器将等到您手动启动它(例如使用跳转列表)并附加到它。

    你可以用它来进行各种激活调试,所以记住它是一件非常好的事情。

    【讨论】:

    • MZetko 非常棒的帮助 - 非常感谢!尤其是提供的清晰度和细节 - 首屈一指。
    • 另外提示:在不启动应用程序的情况下开始调试将是非常宝贵的。不知道它的存在,是的,我敢打赌还有其他像我一样不知道的人。
    • 谢谢,很高兴为您提供帮助 :-) !
    猜你喜欢
    • 2011-05-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-18
    • 2014-03-06
    • 1970-01-01
    相关资源
    最近更新 更多