コード例 #1
0
        private static async Task AskUserInstallCodec(CodecRequiredEventArgs args)
        {
            // show message box to user

            // then open store page
            await args.OpenStorePageAsync();

            // wait for app window to be re-activated
            var tcs = new TaskCompletionSource <object>();
            WindowActivatedEventHandler handler = (s, e) =>
            {
                if (e.WindowActivationState != CoreWindowActivationState.Deactivated)
                {
                    tcs.TrySetResult(null);
                }
            };

            Window.Current.Activated += handler;
            await tcs.Task;

            Window.Current.Activated -= handler;

            // now refresh codec checker, so next file might use HW acceleration (if codec was really installed)
            await CodecChecker.RefreshAsync();
        }
コード例 #2
0
 private async void CodecChecker_CodecRequired(CodecRequiredEventArgs args)
 {
     await Windows.ApplicationModel.Core.CoreApplication.MainView.CoreWindow.Dispatcher.RunAsync(
         CoreDispatcherPriority.Normal,
         new DispatchedHandler(async() =>
     {
         await AskUserInstallCodec(args);
     }));
 }