Обработка события "Список переходов", когда файл выбирается из списка "Последние" для приложения UWP Windows 10
Я работаю над приложением UWP для Windows 10 на C#/Xaml и планирую расширить использование его списка переходов.
Итак, я знаю, как обрабатывать пользовательские задачи списка переходов (например, новый файл, открытый файл и т. Д.), Но для файлов из его последнего использованного списка я вообще не представляю, как перехватить какой файл был выбранный из списка (не смог найти никакой документации для него, тогда как для задач списка переходов я смог).
Если я выбираю файл, когда приложение не открыто, заставка остается открытой. И если я выберу один, когда приложение уже открыто, оно просто снова фокусируется на приложении (очевидно, что желаемое поведение не происходит в этом сценарии, потому что я не обрабатываю это событие).
Это было бы легко понять, если бы у меня был способ отладить приложение после того, как я запустил его через файл списка переходов (или если есть событие App, вызываемое, когда приложение не в фокусе, и я возвращаюсь сосредоточиться на этом, выбрав файл списка переходов - может быть, есть, но я не знаю об этом).
Любое руководство будет высоко ценится!
1 ответ
Активация списка переходов
Вам нужно будет переопределить OnFileActivated
событие в App.xaml.cs
, Экран-заставка остается открытым, и ничего не происходит, потому что в этом обработчике событий вам нужно проверить, было ли приложение запущено ранее или нет, а в случае, если это не так, вы должны создать корневой фрейм и активировать окно, аналогично OnLaunched
обработчик.
Подпись OnFileActivated
событие
void OnFileActivated(FileActivatedEventArgs args)
FileActivatedEventArgs
содержит свойство Files
, который представляет собой список файлов (StorageFiles
), которые были использованы для запуска приложения. В случае активации файла и активации списка переходов, он инициализируется соответствующим образом.
Приложение отладки, когда оно не запущено
Это очень полезный совет - вы можете начать отладку и дождаться запуска приложения. Просто установите точку останова в OnFileActivated
метод, перейдите к свойствам проекта приложения UWP в обозревателе решений, перейдите на вкладку " Отладка " и установите флажок " Не запускать, а отлаживать мой код при запуске".
Теперь начните отладку как обычно, но приложение не запустится, и отладчик будет ждать, пока вы не запустите его вручную (например, с помощью списка переходов), и подключится к нему.
Вы можете использовать это для всех видов отладки активации, так что это очень хорошая вещь для запоминания.